我有一行UITableView,在这行中我有一个带3段的UISwitch。就我而言,我需要获取所选索引,并使用按标签选择的代码:
- (void)viewDidLoad {
[super viewDidLoad];
UITableViewCell *cellAttachment = [_tableView dequeueReusableCellWithIdentifier:@"MyCell0"];
UISegmentedControl *btnAttachment = nil;
btnAttachment = (UISegmentedControl*)[cellAttachment viewWithTag:100];
NSLog(@"Segment -> %ld",(long)btnAttachment.selectedSegmentIndex);
}
使用此代码,我可以选择段,但是当我尝试使用以下内容更改段时
btnAttachment.selectedSegmentIndex = [self.arrayFields[19] intValue];//Inside this array has a number 1!
什么都没做,问题是什么? (我没有IBOutlet,可能吗?)
答案 0 :(得分:0)
您可以在没有IBOutlet的情况下执行此操作。您只需从代码中添加动作处理程序(在viewDidLoad中):
[btnAttachment addTarget:self action:@selector(segmentedControlDidChange:) forControlEvents:UIControlEventValueChanged];
然后添加动作方法:
-(void)segmentedControlDidChange:(UISegmentedControl *)sender {
NSLog(@"Segment -> %ld",(long) sender.selectedSegmentIndex);
}