如何在单个视图中处理多个分段控件的事件

Xav*_*ero 4 iphone uisegmentedcontrol ios

我的viewcontroller视图中有2个分段控件.如何处理两个分段控制器的点击事件?

Sur*_*shi 11

有两种方法可以做到这一点.

  1. 为每个段控件添加不同的操作
  2. 为每个段控件添加相同的操作,并使用其标记检查哪个控件被点击.

    [yourSegmentedControl addTarget:self action:@selector(segmentSwitch:) forControlEvents:UIControlEventValueChanged];
    
    Run Code Online (Sandbox Code Playgroud)


    - (IBAction)segmentSwitch:(id)sender 
    {
        UISegmentedControl *segmentedControl = (UISegmentedControl *) sender;
    
        if(segmentedControl.tag == someTag)
        {
            if(segmentedControl.selectedSegmentIndex == 1)
            {
                // your code
            }
            else if(segmentedControl.selectedSegmentIndex == 2)
            {
                // your code
            }
        }
        else if(segmentedControl.tag == someTag)
        {
            if(segmentedControl.selectedSegmentIndex == 1)
            {
                // your code
            }
            else if(segmentedControl.selectedSegmentIndex == 2)
            {
                // your code
            }
        }
    }
    
    Run Code Online (Sandbox Code Playgroud)