UISegmentedControl
/*
typedef enum {
UISegmentedControlStylePlain,
UISegmentedControlStyleBordered,
UISegmentedControlStyleBar,
UISegmentedControlStyleBezeled,
} UISegmentedControlStyle;
*/
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
但是这个在ios7之后,出于扁平化风格的考虑,这些style都不在有效了
// iOS7.0以后废除了
// self.segControl.segmentedControlStyle = UISegmentedControlStyleBezeled;
// 设置默认索引
// self.segControl.selectedSegmentIndex = 1;
// tintColor默认是nil
// self.segControl.tintColor = [UIColor redColor];
// 初始化UISegmentedControl
// NSArray *segArray = [NSArray arrayWithObjects:@"通话记录",@"短消息", nil];
// self.segControl = [[UISegmentedControl alloc] initWithItems:segArray];
// 更改指定索引的标题
// [self.segControl setTitle:@"One" forSegmentAtIndex:0];
// [self.segControl setTitle:@"Two" forSegmentAtIndex:1];
// 设置UISegmentedControl被点击后是否恢复原样,默认为NO
// self.segControl.momentary = YES;
// 设置指定索引图片
// [self.segControl setImage:[UIImage imageNamed:@"keyboard_0_selected"] forSegmentAtIndex:0];
// [self.segControl setImage:[UIImage imageNamed:@"keyboard_2_selected"] forSegmentAtIndex:1];
// 在指定索引插入一个选项并设置图片
// [self.segControl insertSegmentWithImage:nil atIndex:0 animated:YES];
// 在指定索引插入一个选项并设置标题
// [self.segControl insertSegmentWithTitle:@"Three" atIndex:2 animated:YES];
// 移除指定选项
// [self.segControl removeSegmentAtIndex:0 animated:YES];
// NSFontAttributeName默认是12号字体
// NSDictionary *attributes = [NSDictionary dictionaryWithObjectsAndKeys:[UIFont boldSystemFontOfSize:17],NSFontAttributeName,[UIColor redColor], NSForegroundColorAttributeName, nil];
// // 普通状态
// [self.segControl setTitleTextAttributes:attributes forState:UIControlStateNormal];
// // NSForegroundColorAttributeName默认是黑色
// NSDictionary *highlightedAttributes = [NSDictionary dictionaryWithObject:[UIColor yellowColor] forKey:NSForegroundColorAttributeName];
// // 选中状态
// [self.segControl setTitleTextAttributes:highlightedAttributes forState:UIControlStateSelected];
//在导航栏中间
// self.navigationItem.titleView = self.segControl;
//读取一个item图片
// UIImage *segmentedControlimageItem = [self.segControl imageForSegmentAtIndex:2];
//调整图片或文本在分段控件上的偏移
// CGSize textSize =CGSizeMake(20,0);
// [self.segControl setContentOffset:textSize forSegmentAtIndex:1];
//获取偏移量 默认0
// CGSize textfloat = [self.segControl contentOffsetForSegmentAtIndex:1];
//设置 item是否可以点击默认 yes
// [self.segControl setEnabled:NO forSegmentAtIndex:1];
// 读取item 是否可以点击
// BOOL item4isbool = [self.segControl isEnabledForSegmentAtIndex:1];
//删除一个item
// [self.segControl removeSegmentAtIndex:0 animated:YES];
//删除所有item
// [self.segControl removeAllSegments];
// 读取item 的标题
// NSString *titleString = [self.segControl titleForSegmentAtIndex:1];
// 获取item 的索引号
// int itemNumebr =self.segControl.selectedSegmentIndex;
// 设置控件圆角(有些可能设置了没效果)
// self.segControl.layer.cornerRadius = 0;
在iOS5, UIImage添加了可以拉伸图片的函数,即:
[UIImage resizableImageWithCapInsets:]
// 原图
UIImage *image = [UIImage imageNamed:@"keyboard_3_selected"];
// 拉伸后的
UIImage *newImage = [image resizableImageWithCapInsets:UIEdgeInsetsMake(10, 10, 20, 10)];