请参阅此代码:
int i = years;
NSLog(@"Years i: %i",i);
NSString *syears= [NSString stringWithFormat:@"%d",i];
menuList = [[NSMutableArray alloc] init];
[menuList addObject:[NSMutableDictionary
dictionaryWithObjectsAndKeys:
@"years", kLeftKey,
syears, kRightKey, nil, kControllerKey, nil]];
以上是ViewWillAppear
的摘录。当我在标签ViewWillAppear
之间切换时,它正在做它的工作,数据正在更新到NSString *syears= [NSString stringWithFormat:@"%d",i];
,但之后我的数组没有使用最新的syears值进行更新。我尝试使用setObject
和setValue
,但这些不适用于NSMutableArray
。有什么想法吗?
答案 0 :(得分:1)
NSDictionary
中的键和值必须为非nil
NSObject
。所以你肯定遇到了nil
的问题,可能会有一个关于kLeftKey
等的问题,你没有看到这些定义。
更一般地说,通过menuList
知道你在做什么,以及“我的数组没有得到更新”是什么意思。你想试试吗?在某处使用它作为数据源?您正在重新创建阵列 - 是否可以保留先前的参考并显示?