7

私は UITableView を作成し、いくつかのカスタム UITableViewCells を含めました。最初のセル (たとえば、cell0 という名前) には、入力用の UITextFields がいくつかあります。tableView をスクロールすると、cell0 が画面の上部から消えます。UITextField のテキストを取得するにはどうすればよいですかセル0で?

cellForRowAtIndexPathnil を返します。

4

5 に答える 5

17

私が見つけた唯一の方法は、テーブルビューデリゲートです

- (void)tableView:(UITableView *)tableView didEndDisplayingCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath
{
    [cell dealloc]
}
于 2014-05-23T23:50:21.513 に答える
1

UITableViewCellsの表示可能領域を残すと、実際UITableViewにはテーブルビューから削除され、再利用キューに戻されます。再利用のために選択された場合は、によって返されdequeueReusableCellWithIdentifier:ます。

セルがビューから削除されたときのコールバックはありません。ただし、prepareForReuseによって返される直前にセルで呼び出されdequeueReusableCellWithIdentifier:ます。

最終的に何をしようとしているのですか?

于 2013-08-07T03:33:30.107 に答える
0

NSArrayテキストが変更された瞬間に、テキストをどこかに保存する必要があります (例: )。

于 2013-08-07T03:43:42.410 に答える
-3

テキストフィールドをインスタンス変数として初期化できます。

のように見える:

.h

UITextField *textfiled;

.m

-(void)viewDidLoad
{
    //init textfield
}

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    //init cell...

    [cell addSubview:textfield];
    return cell;
}
于 2013-08-07T03:24:19.967 に答える