5

だから、私はUISegmentedControlを持っています:

[control addTarget:self action:@selector(myAction) forControlEvents:UIControlEventValueChanged];

どのセグメントが選択されているかをどのように確認するのか疑問に思っています(適切なアクションを実行できるようにするため)。私はそのようなものを知っています:

@selector(myAction:)しかし、何が送られますか?つまり、メソッドを定義するとき、何を定義する必要がありますか?

ありがとうございました。

4

3 に答える 3

10

選択したアイテムを取得...質問の2番目の部分

-(IBAction) myAction:(id)sender{
    NSLog(@"myAction",nil);

    UISegmentedControl * control = sender;
    int selectedIndex = [control selectedSegmentIndex];
}
于 2010-08-23T16:18:55.940 に答える
2
- (IBAction)myAction:(id)selector;

セレクターはUISegmentedControlオブジェクトです。したがって、1つのアクションを両方にバインドすると、2つのUISegmentedControlが異なる場合があります。

于 2010-08-23T16:00:45.720 に答える
2

より簡単な方法もあります。

-(IBAction) myAction:(UISegmentedControl*)control {
   NSLog(@"selected index %d", control.selectedSegmentIndex);
}
于 2013-03-19T19:40:05.563 に答える