1

私は、多くのフォームを含む iPhone アプリに取り組んでいます。現在、可能な設定がロードされた UITableView を持つ各設定ページの ViewController クラスがあります。誰かが設定をクリックすると、新しいビューに移動してフォームの値を入力するか、所定の場所に入力することができます。

物を乾いた状態に保つ最良の方法は何ですか? この実装のどの部分を一度実装して再利用できますか?

誰かが新しいビューに移動する設定オプションをクリックしたときに、このビューを作成し、コードのデータ型 (uitextfield または picker など) に従ってテキスト フィールドを追加するにはどうすればよいですか?

4

2 に答える 2

6

プログラムで次のことができます。

ビュー階層を作成する

UIButton

UILabel

あなたはその考えを理解します。

ただし、いくつかのケースでロジックを機能させることをお勧めします。そうすれば、同じことを何度も入力していることに気付くと、どの部分が冗長であるかが明らかになるはずです。その時点で、リファクタリングして冗長コードを再利用可能な形式にします。

HTH。

于 2011-06-03T17:16:54.980 に答える
1

tableViewがある場合、フローは、tableViewデリゲートのdidSelectCellメソッドで選択された設定のviewControllerを作成し、それを現在のviewControllerのナビゲーションコントローラーにプッシュすることです。

ここにサンプルがあります:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    [self.navigationController pushViewController:[self settingsViewControllerAtIndexPath:indexPath] animated:YES];
}

したがって、メソッドを実装する必要があります。

 - (UIViewController*)settingsViewControllerAtIndexPath:(NSIndexPath *)indexPath;

ルートtableViewの選択された行に関連付けられた設定を管理するviewControllerを返します。

フォームがかなり静的な場合は、必要なコードの量を最小限に抑えるためにxibの使用を検討する必要があります。それはあなたの「乾いた状態を保つ方法」への完璧な答えではありませんが、それは十分にきちんとしています;)

幸運を。

于 2011-06-03T17:46:17.963 に答える