数週間前に iOS でプログラミングを始めたばかりなので、これらの質問が本当に基本的なものである場合は申し訳ありません。
短い話: 多くの顧客データを取得する必要がある CRM アプリを設計しています。タブ付きフォームを使用するデスクトップ アプリをエミュレートしようとしています。これを iPad に実装する (技術的および視覚的に) 最良の方法は何でしょうか?
次のものが必要です。
- 各タブ (5 ~ 6 個) には、さまざまなタイプの多数のフィールド (ラベル付き) が含まれており、専用のコントロール (uidatepicker、uipickerview/uisegmentedcontrol、textarea+stepper、switch など) を使用したいと考えています。生のテキストフィールドのみ
- 理想的には (実際にはこれは非常に重要な要件です)、モデルの変更によって IB のフォームを手動で調整する必要がないように、UI をプログラムで生成する必要があります。
- 現在のタブに既に入力されているデータを失うことなく、タブを切り替えることができます。
これまでの私の進捗状況、再。全体的なスイッチング メカニズム:
私は当初、Matthias のコメントで説明されているように、タブ スイッチャーをセグメント化されたコントロールとして実装し、異なるビューを切り替えることを考えていました。ただし、必要に応じて VC をインスタンス化すると、既に入力されているデータが失われることになります (何らかのキャッシュを実装しない限り、もっと簡単なものを望んでいます)。
プログラムでビューを表示/非表示にすることでビューを切り替える、より簡単なアプローチを検討していますが、これはメモリを使いすぎるのではないかと心配しています (合計で 100 以上のフィールドを見ている可能性があります)。
各タブ内のフォーム フィールドの表示については、次のようになります。
- それらをIBで手動でレイアウトすることもできますが(またはテーブルビューの静的セルとして)、基本的にUIがハードコードされて変更が難しいことを意味するため、そうしないことをお勧めします
- プログラムでインターフェースを作成したいのですが、さまざまなフィールドタイプの処理、ポップアップの添付 (日付フィールドの日付ピッカーなど)、フィールドイベントの処理などがどれほど簡単かわかりません.
誰かが私が使用できるポインタを持っていれば、本当に感謝しています.
ティア、ルシアン