我对 iOS 还算陌生,我的数组遇到了困难,我正在使用 NSMutableArray
,我已将数组放入 AppDelegate
中,
第一次在我的 viewController 中加载应用程序时,数组中还没有对象,我有一个设置将整数放入数组中,
但保存后数组未加载,但退出然后重新打开时,它将加载,
请有人解释一下我该如何解决以及为什么会这样?
我正在使用它tableview
。
在应用程序委托(delegate)
中:
self.integers = [NSMutableArray array];
for(int i = 0; i <= 10; i++)
{ .....
}
加载中:
integers = ((AppDelegate *)[[UIApplication sharedApplication] delegate]).integers;
最佳答案
我的回答:
在代码中的某个地方有一个循环加载整数并将它们放入数组中,对吧?
您需要将该循环放入一个方法中,并在您想要将 UITableVIew
内容重置回其原始内容时再次调用它。
然后,您需要更新 AppDelegate
和 viewController
中的数组,因此根据该方法所在的类,您需要使用以下方法将整数复制到另一个类
integers = ((AppDelegate *)[[UIApplication sharedApplication] delegate]).integers;
或
// your array then update
self.integerss = [NSMutableArray array];
for(int i = 0; i <= 10; i++)
{ .....
}
((AppDelegate *)[[UIApplication sharedApplication] delegate]).integers = self.integers;
使用最初用于数组的相同代码将所有整数放回原处,然后在 tableview
上调用 reloadData
。
这将解决您的问题。
关于iphone - NSMutableArray 不更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11592251/