3

私のアプリには、プロファイル情報を編集するための2つの画面があります。1つ目はユーザープロファイルを表示し、2つ目はプロファイル情報を編集します。それらは似ています。最初の画面のxibファイルを完成させました。

2番目の画面で再利用するための最良の方法は何ですか?

4

4 に答える 4

3

関連する要素をカスタムビュークラスとしてカプセル化する必要があります。xibだけでなくコードを使用してビューを作成することで、この問題に取り組むことができます。これをお勧めします。

ただし、xibを使用したい場合は、再利用したいものをモデル化したものを作成できます。次に、View Controllerで、次のようなコードを呼び出します。

UIView* aView = [UIView alloc] initWithFrame .....];
[[NSBundle mainBundle] loadNibNamed:@"MyReusableComponent" owner:aView options:nil];
UILabel* someLabel = aView.injectedLabel; //this is alive after loading the xib
[self.view addSubView:aView];

xibを作成するときは、ファイル所有者を、挿入されるプロパティのセッターに応答するクラスに設定する必要があります。(たとえば、新しいビュークラス)。このようにして、参照を配線できます。

詳細については、xibからテーブルセルをロードするAppleの例を参照してください。これは同じ手法です。xibをロードして所有者を指定すると、xibから所有者(この場合はカスタムビュー)に値が挿入されます。

ここに画像の説明を入力してください

于 2013-01-12T14:42:05.277 に答える
0

外観を変更するs(showに論理的に使用したsの代わりに)を使用して、オン/オフを切り替えることができUITextFieldます。最小限の例として:UILabelenabled

表示

self.textField.borderStyle = UITextBorderStyleNone;
self.textfield.enabled     = NO;

編集

self.textField.borderStyle = UITextBorderStyleBezel;
self.textfield.enabled     = YES;

もちろん、これらの基本だけでなく、外観についても多くのことを行うことができます。

于 2013-01-12T13:37:18.707 に答える
0

ビューコントローラの編集モードに入り、作成した要素を再利用するということですか?

ViewControllerで編集モードを有効にする

于 2013-01-12T14:27:13.310 に答える
-1

Xcodeの場合:ファイルに移動>複製。

次に、複製したxibに「editProfile」のような名前を付けます。これにより、最初のxibの複製が作成され、必要に応じて調整できます。

于 2013-01-12T13:37:59.020 に答える