2011-01-13 12 views
0

私たちの従業員が直前に行ったサイト訪問の詳細を記入するための内部ipadアプリケーションを作成しています。IPadすべてのフィールドをクリアして起動します

アプリ内のページの1つは、ユーザーがすべての情報を入力する大量のフォームです。このフォームにリセットボタンがあります。このボタンは、すべてのテキストフィールド、テキストビュー、チェックボックスのチェックを外すだけです。

ビューを状態にリセットするきれいな方法は、まったく新しいもの(汚れていないもの)ですか?私は本当にビューのすべてのコントロールを通過し、何も戻さないようにしたい。

ビュー全体をワイプしてもう一度やり直す方法はありますか?私はこれを行うための簡単な方法はによってだと思い事前

答えて

0

おかげで、

-(IBAction) reset 
{ 
     YourView *obj=[[YourView alloc] initWithNibName:@"YourView" bundle:[NSBundle mainBundle]]; 
     [self presentModalViewController:obj animated:NO]; 
     [obj release]; 
} 
0

私はこれを行う最も簡単な方法は、あなた、あなたのビュー(またはそれのセクションを破棄することだと思いますリセットしたい)、再作成してください。

//assuming you have a nib file containing some custom FormView class with your current view controller as its owner and the FormView instance in the nib bound to a 'formView' property on the controller 
[self.formView removeFromSuperView]; 
[[NSBundle mainBundle] loadNibNamed:@"FormView" owner:self options:nil]; 
[self.view addSubView:self.formView]; 
//keep a reference to the old formView first and animate the transition as you like 

もっと複雑ですが、おそらく価値があるが、あなたのビューオブジェクトは、デリゲートを介して、またはスーパービューのプロパティとして公開され、いくつかのモデルオブジェクトへの変更を監視するためにKVOを使用できるようにするには次のようになりますようそれは同じくらい簡単かもしれません。ビューの他の部分やネットワークアップデートなどの外部ソースからのモデルの変更に応じてビューを自動的に更新できるようにするには便利です。ビューが観察しているプロパティの値をモデルの新しいインスタンスに置き換えるだけで、 "リセット"を簡単に行うことができます。

関連する問題