Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/100.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 如何禁用部分UISegmentedControl?_Iphone_Ios_Uisegmentedcontrol - Fatal编程技术网

Iphone 如何禁用部分UISegmentedControl?

Iphone 如何禁用部分UISegmentedControl?,iphone,ios,uisegmentedcontrol,Iphone,Ios,Uisegmentedcontrol,以下是UISegmentedControl UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObjects: [UIImage imageNamed:@"down.png"], [UIImage imageNamed:@"dList.png"], nil]]; [segmentedControl addTarget:self action:@

以下是
UISegmentedControl

UISegmentedControl *segmentedControl = [[UISegmentedControl alloc] initWithItems:[NSArray arrayWithObjects: [UIImage imageNamed:@"down.png"], [UIImage imageNamed:@"dList.png"], nil]];  

[segmentedControl addTarget:self action:@selector(segmentAction:) forControlEvents:UIControlEventValueChanged];  
segmentedControl.frame = CGRectMake(0, 0, 90, 65);  
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;  
segmentedControl.momentary = YES;  

UIBarButtonItem *segmentBarItem = [[UIBarButtonItem alloc] initWithCustomView:segmentedControl];  

[segmentedControl release];  

self.navigationItem.rightBarButtonItem = segmentBarItem;  

[segmentBarItem release];    

- (void)segmentAction:(id)sender{
    if([sender selectedSegmentIndex] == 0)
    {
        button.hidden=NO;
    }
    else
    {
        [self dListMethod ];
    }
}

在if()部分,我想禁用
selectedSegmentIndex==0
并在
按钮时启用。hidden=YES
使用
setEnabled:forSegmentAtIndex:
方法启用和禁用段

[segmentedControl setEnabled:NO forSegmentAtIndex:0];

如果要禁用第一段。

对于那些可能对swift命令感兴趣的人:

Swift 2.3

segmentedControl.setEnabled(false , forSegmentAtIndex: 0);
self.segmentedControl.setEnabled(false, forSegmentAt: 0);
Swift 3

segmentedControl.setEnabled(false , forSegmentAtIndex: 0);
self.segmentedControl.setEnabled(false, forSegmentAt: 0);

如果([sender selectedSegmentIndex]==0)执行if
button.hidden=NO
,您不希望该行执行吗?