-3

我正在尝试删除 UITableView 行并从 NSMutableArray 中删除对象。这是我删除行的代码。

    [myArray removeObjectAtIndex:indexPath.row];

在此之后,我正在重新加载我的 tableView。使用它删除该对象。但是,问题是当我第二次运行应用程序时,已删除的对象再次显示在 tableview 中。如何从数组中删除对象?请帮我。提前致谢。

4

4 回答 4

1

我认为您正在重新初始化数组,这就是它发生的原因。

[myArray removeObjectAtIndex:indexPath.row]; 

这条线肯定会从 myArray 中删除对象。您可以在此行执行后通过断点或 NSLOg 进行检查

于 2013-02-04T13:38:16.177 回答
1

只需检查您的myArray Initialization部分。

1)检查当您加载特定视图时是否调用了您的 myArray 的 Initialization !

2)检查您的viewDidLoadMethod ,如果您已经在myArray那里初始化了,那么该元素将永远不会被删除。

答案:使用断点NSLogs

于 2013-02-04T13:42:27.743 回答
0

您已经从某处加载了myArray,现在数据在 RAM 中,删除该对象会将其从 RAM 中删除,但它已经存在于您加载该数组的那个位置。也从那个地方删除。

于 2013-02-04T13:43:35.393 回答
-1

首先告诉我......你从哪里得到 Array.. 我的意思是来自databaseor plistor coredataor locally?? 如果您在方法中本地创建数组并从中获取viewDid数组项,那么它将获得您在viewDid..最后的核心数据(关于如何删除数据) 。databaseplistcoredata[tableView reloadData];

于 2013-02-04T14:02:13.443 回答