- (void)initSegmentedControl
{
NSArray *segmentedData = [[NSArray alloc]initWithObjects:@"apple",@"orange",@"banana",nil];
UISegmentedControl *segmentedControl = [[UISegmentedControl alloc]initWithItems:segmentedData];
segmentedControl.frame = CGRectMake(10.0, 20.0,300.0, 30.0);
segmentedControl.backgroundColor = [UIColor whiteColor];
//消掉边框
// segmentedControl.tintColor = [UIColor clearColor];
/*
这个是设置按下按钮时的颜色
*/
segmentedControl.tintColor = [UIColor colorWithRed:49.0 / 256.0 green:148.0 / 256.0 blue:208.0 / 256.0 alpha:1];
segmentedControl.selectedSegmentIndex = 0;//默认选中的按钮索引
/*
下面的代码实同正常状态和按下状态的属性控制,比如字体的大小和颜色等
*/
NSDictionary *attributes = [NSDictionary dictionaryWithObjectsAndKeys:[UIFont boldSystemFontOfSize:12],NSFontAttributeName,[UIColor redColor], NSForegroundColorAttributeName, nil];
// 默认时
[segmentedControl setTitleTextAttributes:attributes forState:UIControlStateNormal];
NSDictionary *highlightedAttributes = [NSDictionary dictionaryWithObject:[UIColor blackColor] forKey:NSForegroundColorAttributeName];
// 选中时
[segmentedControl setTitleTextAttributes:highlightedAttributes forState:UIControlStateHighlighted];
//设置分段控件点击相应事件
[segmentedControl addTarget:self action:@selector(doSomethingInSegment:)forControlEvents:UIControlEventValueChanged];
[self.view addSubview:segmentedControl];
}
-(void)doSomethingInSegment:(UISegmentedControl *)Seg
{
NSInteger Index = Seg.selectedSegmentIndex;
switch (Index)
{
case 0:
self.view.backgroundColor = [UIColor redColor];
break;
case 1:
self.view.backgroundColor = [UIColor orangeColor];
break;
case 2:
self.view.backgroundColor = [UIColor yellowColor];
break;
default:
break;
}
}