0

UITextFieldテーブルビューセルに があります。Edit のテーブルビュー クラスでは[tableview setEditing:YES]、Done を実行してい[tableview setEditing:NO]ます。

- (void)setEditing:(BOOL)editing animated:(BOOL)animatedテーブルビューセルにあるので、このメソッドを使用しています。

[完了] ボタンを押すと、オンラインでクラッシュし、次のよう[tableview setEditing:NO]に表示されます。

*** -[mycell _setEditingStyle:]: message sent to deallocated instance 0x8d401b0

それを見た後、po 0x8d401b0それは与えてい*** -[mycell respondsToSelector:]: message sent to deallocated instance 0x8d401b0ます。

このクラッシュを解決するにはどうすればよいですか?

コード :

- (void)setEditing:(BOOL)editing animated:(BOOL)animated
{
    [super setEditing:editing animated:animated];
    if(editing)
    {
        [self editModeActivated];
    }
    else 
    {   
        [self editModeDeactivated];
    }
}

rowatindexpath のセル:

static NSString *identifier=@"cell";
mycell *cell = (mycell *)[tableView dequeueReusableCellWithIdentifier:identifier];
if (cell == nil) 
{
    cell = [[mycell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier]; 
}

そしてセルの初期化コード

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
    self = [[[NSBundle mainBundle] loadNibNamed:@"mycell" owner:self options:nil] objectAtIndex:0];
    if (self) {
        // Initialization code
        [self customIntialization];
    }
    return self;
}
4

2 に答える 2

0

外部で tableviewcontroller 編集プロパティをチェックすると、テーブルを表示する前にテーブルをリロードする必要がある場合があります。

于 2014-02-17T03:38:49.403 に答える