我们会经常使用到分段控件UISegmentedControl,以下是其的具体用法。。
NSArray *array=@[@"前天",@"昨天",@"今天",@"明天",@"后天"];
UISegmentedControl *segmentControl=[[UISegmentedControl alloc]initWithItems:array];
//设置位置 大小
segmentControl.frame=CGRectMake(100, 100, 200, 40);
//默认选择
segmentControl.selectedSegmentIndex=0;
//设置背景色
segmentControl.tintColor=[UIColor redColor];
//设置监听事件
[segmentControl addTarget:self action:@selector(change:) forControlEvents:UIControlEventValueChanged];
[self.view addSubview:segmentControl];
//在指定索引插入一个选项并设置题目
[segmentControl insertSegmentWithTitle:@"插入" atIndex:3 animated:NO];
//移除指定索引的选项
[segmentControl removeSegmentAtIndex:3 animated:NO];
//设置在点击后是否恢复原样
segmentControl.momentary = YES;
//设置指定索引选项不可选
[segmentControl setEnabled:NO forSegmentAtIndex:3];
//设置指定索引选项的宽度
[segmentControl setWidth:60.0 forSegmentAtIndex:2];
//判断指定索引选项是否可选
BOOL enableFlag = [segmentControl isEnabledForSegmentAtIndex:3];
NSLog(@"%d",enableFlag);
//获取总选项数segmentedControl.numberOfSegments
UILabel *numberOfSegments = [[UILabel alloc]initWithFrame:CGRectMake(140.0, 150.0, 30.0, 30.0)];
numberOfSegments.text = [NSString stringWithFormat:@"%lu",(unsigned long)segmentControl.numberOfSegments];
[self.view addSubview:numberOfSegments];
NSLog(@"分段控件的选项个数:>%@",numberOfSegments.text);
//Segmente未选中背景
[[UISegmentedControl appearance] setBackgroundImage:[UIImage imageNamed:@"1"]
forState:UIControlStateNormal
barMetrics:UIBarMetricsDefault];
}
-(void)change:(UISegmentedControl *)segmentControl{
NSInteger index = segmentControl.selectedSegmentIndex;
switch (index) {
case 0:
break;
case 1:
break;
case 2:
break;
case 3:
break;
case 4:
break;
default:
break;
}
NSLog(@"segmentControl %ld",segmentControl.selectedSegmentIndex);
}
以下是效果图
:
本文详细介绍了iOS开发中常用的UISegmentedControl控件的使用方法,包括初始化、设置样式、监听事件、动态增删选项等操作。
929

被折叠的 条评论
为什么被折叠?



