GeometryReader自体の高さを子ビューのフレームサイズと同じにする

記事タイトルをどうすべきか結構悩んだんですがw、要はやりたいのはこういうことです。 Rectangleの高さを、与えられたフレーム幅を基に動的に変化させたいとします。 ここではフレーム幅の半分のサイズの高さを指定することとします。 struct ContentView:…

[SwiftUI] インラインでTextにImageを埋め込むデザインを実装しようとして苦労した話

テキストの先頭にアイコンがあり、2行目のテキストの先頭をアイコンの下に潜り込ませるデザインを、あなたはどのように実装しますか? SwiftUIのTextを使うと、テキストに画像をインラインで埋め込むことができるので、以下のように簡単に実装できます。 Tex…

[SwiftUI] カスタムビューに独自のModifierを実装する方法

アプリの複数の画面で汎用的に使えるカスタムビューを作ったが、画面によって一部分だけ色を変えたいという要件が出てきたら、どう実装すれば良いでしょうか? 例えば、ユーザ情報を表示する汎用的なビューを以下のように実装したとします(テキスト思いっき…

住信SBIネット銀行の定額自動入金・定額自動振込が便利すぎるので紹介したい

給料が振り込まれた翌日、ATMからお金を下ろして、ローンの口座、貯金の口座、子どもの口座などなどたくさんの口座に預け入れしないといけない。。 手数料もばかにならないし、何よりめんどくさい。。 こういう悩みを抱えている方、結構いるのではないでしょ…

肥大化したUITextViewをテスタブルで再利用可能な構造にリファクタする

複雑なテキスト処理ロジックを持つテキストエディタを実装しようとすると、UITextViewのカスタムクラスが肥大化することはありませんか? 例えば、ユーザがテキストを入力すると、その内容を検証したり、ハイライトしたり、その他様々な処理を行うという要件…

XcodeGenを導入するにあたりお世話になった記事3選

XcodeGenを導入するぞ!といっても、最初は何から手を付けていいのかわからない人が多いのではないでしょうか? 私も最初はそんな状態でしたが、先人の皆さまが素晴らしい記事を残してくれていたので、年季の入った大規模なプロジェクトにもかかわらずXcodeG…

BitriseでGemをキャッシュする方法

BitriseのCache:Pushステップを利用して、Gemをキャッシュさせます。 なお、Bitriseのキャッシュの仕組みについてはこちらの記事で紹介しているので参考にしてください。 bamboo-hero.com Gemをキャッシュさせる方法 こんな構成のワークフローを作成します。…