わかりました。UISwitchを使用して制御される特定のルール(多くのルール)を管理者が制御できるようにするためのインターフェイスを構築しています。
だから私はスイッチの配列を宣言しました
NSMutableArray *cameraSwitches = [[NSMutableArray alloc] initWithObjects:
loc0CamProfileSwitch, loc1CamProfileSwitch, loc2CamProfileSwitch,
loc3CamProfileSwitch, loc4CamProfileSwitch, loc5CamProfileSwitch,
loc6CamProfileSwitch, loc7CamProfileSwitch, loc8CamProfileSwitch, nil];
ここで、配列内の各オブジェクトはUISwitchであり、
次に、これらのスイッチの初期値をチェックするdiff配列をループします
for (NSUInteger i = 0; i < [camP count]; i++) {
if ([camP objectAtIndex:i] != 0) {
//UISwitch *csw = [cameraSwitches objectAtIndex:i];
//[csw setOn:YES];
[[cameraSwitches objectAtIndex:i] setOn:YES];
else { [loc7CamProfileSwitch setOn:NO]; }
}
しかし、私が試しているのは、実行時にエラーが発生し、例外がスローされることです。
'NSRangeException', reason: '*** -[__NSArrayM objectAtIndex:]: index 0 beyond bounds for empty array'
ブレークポイントの使用:この行に何か問題があることに気付きました
[[cameraSwitches objectAtIndex:i] setOn:YES];
-または私がアレイを開始した方法で、どんな助けも非常に高く評価されています