初始化
NSArray *array=@[@"红",@"黄",@"蓝"];
//数组中有多少个元素,分段控制就有多少条目(分段)
self.seg=[[UISegmentedControl alloc] initWithItems:array];
self.seg.frame=CGRectMake(50, 100, 200, 50);
//选中哪一个分段
self.seg.selectedSegmentIndex=1;
//改变选中时颜色,字体,边框颜色.
self.seg.tintColor=[UIColor blackColor];
//改变背景颜色
// self.seg.backgroundColor=[UIColor greenColor];
[self addSubview:self.seg];
TestView *test=[[TestView alloc] initWithFrame:CGRectMake(CGRectGetMinX(self.seg.frame), self.seg.frame.origin.y+CGRectGetHeight(self.seg.frame)+20, CGRectGetWidth(self.seg.frame), CGRectGetHeight(self.seg.frame)+200)];
test.backgroundColor=[UIColor blueColor];
test.tag=101;
[self addSubview:test];
点击事件控制器
[self.rv.seg addTarget:self action:@selector(segAction:) forControlEvents:UIControlEventValueChanged ];
实现方法
-(void)segAction:(UISegmentedControl *)sender{
//打印分段下标
NSLog(@"%d",sender.selectedSegmentIndex);
NSLog(@"%@",[sender titleForSegmentAtIndex:sender.selectedSegmentIndex]);
//设置分段上的字符串
NSArray *arr=@[@"红色",@"黄色",@"蓝色"];
[sender setTitle:arr[sender.selectedSegmentIndex] forSegmentAtIndex:sender.selectedSegmentIndex];
/*
if (sender.selectedSegmentIndex==0) {
[self.rv viewWithTag:101].backgroundColor=[UIColor redColor];
}
if (sender.selectedSegmentIndex==1) {
[self.rv viewWithTag:101].backgroundColor=[UIColor yellowColor];
}
if (sender.selectedSegmentIndex==2) {
[self.rv viewWithTag:101].backgroundColor=[UIColor blueColor];
}
*/
NSArray *colorArray=@[[UIColor redColor],[UIColor yellowColor],[UIColor blueColor]];
[self.rv viewWithTag:101].backgroundColor=colorArray[sender.selectedSegmentIndex];
[self.rv viewWithTag:102].backgroundColor=[UIColor colorWithRed:self.num green:self.num1 blue:self.num2 alpha:self.num3];
}