基于UI分段控件名称

时间:2016-10-26 07:31:24

标签: ios objective-c uicollectionview uisegmentedcontrol

我正在尝试基于UI分段控件名称执行各种操作
这是我的代码:

- (UIView *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{
    [cell.mySegmentedControl addTarget:self action:@selector(segmentValueChanged:) forControlEvents:UIControlEventValueChanged];
}

UIsegemented控件有两个索引名称为accept和reject。

- (void) segmentValueChanged: (UISegmentedControl *) sender {

    if(sender.selectedSegmentIndex == 0)
    {
        // I am changing the UISegmented control index name
        [sender setTitle:@"SEND TO ADMIN" forSegmentAtIndex:sender.selectedSegmentIndex];
        [sender setTitle:@"EVALUATE" forSegmentAtIndex:1];
    }
    else
    {
        // 
    }
}

同样,我需要在点击SEND TO ADMIN时触发功能,并且在EVALUATE时也是如此。

如何根据UISegmented控件名称编写条件。
任何帮助将不胜感激。

提前致谢!

1 个答案:

答案 0 :(得分:1)

您可以使用以下代码访问所选片段的标题:

  NSInteger selectedIndex = [sender selectedSegmentIndex];
  NSString *selectedTitle = [sender titleForSegmentAtIndex:selectedIndex];

    if ([selectedTitle isEqual:@"SEND TO ADMIN"] || [selectedTitle isEqual:@"EVALUATE"]) {
        // Call your function here
    }

将其添加到- (void) segmentValueChanged: (UISegmentedControl *) sender功能中。