Mac 用のストップウォッチ アプリケーションを作成しており、現在「ラップ」機能に取り組んでいます。整理しやすくするために、ラップをテーブルビューに入れています。配列コントローラーを使用してテーブルに物を入れています。
基本的に、私がやろうとしていることはこれです:
[arrayController addObject: [NSMutableDictionary dictionaryWithObjectsAndKeys:@"Lap 1",
@"lapNumber", nil]];
これは問題なく機能しますが、numLaps と呼ばれるラップ数を表す整数を使用して、ラップの隣の数値を制御できるようにしたいと考えています。したがって、私のコードは次のようになります。
[arrayController addObject: [NSMutableDictionary dictionaryWithObjectsAndKeys:@"Lap %i",
numLaps, @"lapNumber", nil]];
ただし、nil の前にコンマが 2 つ以上あるため、プログラムがめちゃくちゃになっていると思います。コンソールに次のメッセージがスローされますが、それが何を意味するのか、または修正する方法が正確にはわかりません。
2013-09-03 16:52:31.515 Popup[3242:303] +[NSMutableDictionary dictionaryWithObjectsAndKeys:]: second object of each pair must be non-nil. Or, did you forget to nil-terminate your parameter list?
2013-09-03 16:52:31.519 Popup[3242:303] (
0 CoreFoundation 0x00007fff9800a0a6 __exceptionPreprocess + 198
1 libobjc.A.dylib 0x00007fff9920b3f0 objc_exception_throw + 43
2 CoreFoundation 0x00007fff97fe8e31 +[NSDictionary dictionaryWithObjectsAndKeys:] + 433
3 Popup 0x00000001000035a0 -[PanelController btnLapWasClicked:] + 192
4 AppKit 0x00007fff96082a59 -[NSApplication sendAction:to:from:] + 342
5 AppKit 0x00007fff960828b7 -[NSControl sendAction:to:] + 85
6 AppKit 0x00007fff960827eb -[NSCell _sendActionFrom:] + 138
7 AppKit 0x00007fff96080cd3 -[NSCell trackMouse:inRect:ofView:untilMouseUp:] + 1855
8 AppKit 0x00007fff96080521 -[NSButtonCell trackMouse:inRect:ofView:untilMouseUp:] + 504
9 AppKit 0x00007fff9607fc9c -[NSControl mouseDown:] + 820
10 AppKit 0x00007fff9607760e -[NSWindow sendEvent:] + 6853
11 AppKit 0x00007fff96073744 -[NSApplication sendEvent:] + 5761
12 AppKit 0x00007fff95f892fa -[NSApplication run] + 636
13 AppKit 0x00007fff95f2dcb6 NSApplicationMain + 869
14 Popup 0x0000000100001652 main + 34
15 Popup 0x0000000100001624 start + 52
)
プログラムを混乱させない別の方法で私がやろうとしていることを実装する方法はありますか?
ありがとう。