1

IBにNSSegmentedControlボタンを実装しようとしています。

私はそれを接続しています- (IBAction)editCart:(id)sender;

また、に接続されていますNSSegmentedControl *editCartButton;

最初の「セグメント」は、カートの値を減らすための「-」ボタンです。2番目の「セグメント」はカートの値を増やすための「+」ボタンです。

次のように「sender」値を使用しようとすると[sender selectedSegment]、次のエラーが発生します。 -[NSTableView selectedSegment]: unrecognized selector sent to instance 0x100622aa0

私のボタンはNSTableView内にあります。

私も試しました:[[editCartButton cell] selectedTag]

条件を実行すると、常に(null)の値が返されます。取得する予定の0と1の特定のタグを取得したいのですが、適切なアクションが見つかりません。

よろしくお願いします。

4

3 に答える 3

1

これ:

-[NSTableView selectedSegment]: unrecognized selector
                                sent to instance 0x100622aa0

基本的に、それはあなたが思っているものでsenderはないことを示していNSSegmentedControlます。はsenderですNSTableView。したがって、間違った方法で配線したか、深刻なメモリ管理の問題があり、NSSegmentedControlが割り当て解除NSTableViewされ、 がそのメモリ ロケーションで現在検出されています。

-(IBAction)editCart:(id)senderの行を追加できます。

NSLog(@"editCart, sender = %@",sender);

これを確認します。このような行をコードの他の場所にドロップNSLogして、何が起こるべきかについての考えを検証できます。

于 2012-02-10T02:09:09.967 に答える
-1

IBAction で (id) を (UISegmentedControl *) に置き換えてみてください

于 2012-02-10T01:58:42.357 に答える