私は UITableView を作成し、いくつかのカスタム UITableViewCells を含めました。最初のセル (たとえば、cell0 という名前) には、入力用の UITextFields がいくつかあります。tableView をスクロールすると、cell0 が画面の上部から消えます。UITextField のテキストを取得するにはどうすればよいですかセル0で?
cellForRowAtIndexPathnil を返します。
私は UITableView を作成し、いくつかのカスタム UITableViewCells を含めました。最初のセル (たとえば、cell0 という名前) には、入力用の UITextFields がいくつかあります。tableView をスクロールすると、cell0 が画面の上部から消えます。UITextField のテキストを取得するにはどうすればよいですかセル0で?
cellForRowAtIndexPathnil を返します。
私が見つけた唯一の方法は、テーブルビューデリゲートです
- (void)tableView:(UITableView *)tableView didEndDisplayingCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
[cell dealloc]
}
UITableViewCellsの表示可能領域を残すと、実際UITableViewにはテーブルビューから削除され、再利用キューに戻されます。再利用のために選択された場合は、によって返されdequeueReusableCellWithIdentifier:ます。
セルがビューから削除されたときのコールバックはありません。ただし、prepareForReuseによって返される直前にセルで呼び出されdequeueReusableCellWithIdentifier:ます。
最終的に何をしようとしているのですか?
NSArrayテキストが変更された瞬間に、テキストをどこかに保存する必要があります (例: )。
テキストフィールドをインスタンス変数として初期化できます。
のように見える:
.h
UITextField *textfiled;
.m
-(void)viewDidLoad
{
//init textfield
}
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
//init cell...
[cell addSubview:textfield];
return cell;
}