07-UI常见控件之 UISegmentedControl分栏
2015-07-09 20:38
399 查看
NSArray *arr =
@[@"常用",@"主页",@"返回"];
UISegmentedControl *seg = [[UISegmentedControlalloc]
initWithItems:arr];
seg.frame =
CGRectMake(100,
200, 200,
50);
[self.viewaddSubview:seg];
seg.selectedSegmentIndex;//通过这个属性获得当前下标0 1 2
[seg addTarget:selfaction:@selector(action:)forControlEvents:UIControlEventValueChanged];
}
- (void)action :(UISegmentedControl *)seg
{
NSLog(@"%ld",
seg.selectedSegmentIndex);//通过这个属性获得当前下标0 1 2
}
UISegment属性
[align=left]typedef NS_ENUM(NSInteger, UISegmentedControlStyle) {[/align]
[align=left]UISegmentedControlStylePlain, // large plain系统默认平板样式[/align]
[align=left]segmentedControl.segmentedControlStyle = UISegmentedControlStylePlain;[/align]
[align=left]UISegmentedControlStyleBordered, // large bordered黑边样式[/align]
[align=left]segmentedControl.segmentedControlStyle = UISegmentedControlStyleBordered;[/align]
[align=left]UISegmentedControlStyleBar, // small button/nav bar style. Tintable条状样式[/align]
[align=left]segmentedControl.segmentedControlStyle =UISegmentedControlStyleBar;[/align]
UISegmentedControlStyleBezeled,
// DEPRECATED. Do not use this style. 这个类型不要使用,用了会报错喔。
[align=left]};[/align]
默认空,只有使用UISegmentedControlStyleBar,才能设置渐变颜色。
[align=left]segmentedControl.segmentedControlStyle =UISegmentedControlStyleBar;[/align]
[align=left]segmentedControl.tintColor = [UIColor redColor];[/align]
[align=left]效果:[/align]
[align=left] [/align]
[align=left]segmentedControl.momentary =No;[/align]
[align=left] [/align]
[align=left]点击之后效果:[/align]
[align=left]segmentedControl.momentary =YES;[/align]
[align=left]点击之后效果:[/align]
[align=left] [/align]
[align=left] [/align]
[align=left] [/align]
segmentedControl.selectedSegmentIndex = 2;//设置默认选择项索引
segmentedControl.selectedSegmentIndex //
获取选中项
效果:
[align=left]效果:[/align]
[align=left]效果:[/align]
//[segmentedControl removeAllSegments];
[align=left][segmentedControl setWidth:70.0 forSegmentAtIndex:2];//设置指定索引选项的宽度[/align]
效果:
设置选项卡内部文字或者图片与默认位置的偏移量,默认位置在选项卡的中心。
效果:
[align=left][segmentedControl setEnabled:NO forSegmentAtIndex:4];//设置指定索引选项不可选[/align]
[segmentedControl addTarget:self action:@selector(itemClick) forControlEvents:UIControlEventValueChanged];
@[@"常用",@"主页",@"返回"];
UISegmentedControl *seg = [[UISegmentedControlalloc]
initWithItems:arr];
seg.frame =
CGRectMake(100,
200, 200,
50);
[self.viewaddSubview:seg];
seg.selectedSegmentIndex;//通过这个属性获得当前下标0 1 2
[seg addTarget:selfaction:@selector(action:)forControlEvents:UIControlEventValueChanged];
}
- (void)action :(UISegmentedControl *)seg
{
NSLog(@"%ld",
seg.selectedSegmentIndex);//通过这个属性获得当前下标0 1 2
}
UISegment属性
1.segmentedControlStyle
设置segment的显示样式。[align=left]typedef NS_ENUM(NSInteger, UISegmentedControlStyle) {[/align]
[align=left]UISegmentedControlStylePlain, // large plain系统默认平板样式[/align]
[align=left]segmentedControl.segmentedControlStyle = UISegmentedControlStylePlain;[/align]
[align=left]UISegmentedControlStyleBordered, // large bordered黑边样式[/align]
[align=left]segmentedControl.segmentedControlStyle = UISegmentedControlStyleBordered;[/align]
[align=left]UISegmentedControlStyleBar, // small button/nav bar style. Tintable条状样式[/align]
[align=left]segmentedControl.segmentedControlStyle =UISegmentedControlStyleBar;[/align]
UISegmentedControlStyleBezeled,
// DEPRECATED. Do not use this style. 这个类型不要使用,用了会报错喔。
[align=left]};[/align]
2.tintColor 渐变颜色
Default tintColor is nil. Only used if style is UISegmentedControlStyleBar默认空,只有使用UISegmentedControlStyleBar,才能设置渐变颜色。
[align=left]segmentedControl.segmentedControlStyle =UISegmentedControlStyleBar;[/align]
[align=left]segmentedControl.tintColor = [UIColor redColor];[/align]
[align=left]效果:[/align]
[align=left] [/align]
3.momentary 设置在点击后是否恢复原样
[align=left]默认为NO[/align][align=left]segmentedControl.momentary =No;[/align]
[align=left] [/align]
[align=left]点击之后效果:[/align]
[align=left]segmentedControl.momentary =YES;[/align]
[align=left]点击之后效果:[/align]
[align=left] [/align]
[align=left] [/align]
4. numberOfSegments(只读)
获取总选项数segmentedControl.numberOfSegments[align=left] [/align]
5. selectedSegmentIndex
用来设置选中项或者返回选中项。segmentedControl.selectedSegmentIndex = 2;//设置默认选择项索引
segmentedControl.selectedSegmentIndex //
获取选中项
6.- (void)setTitle:(NSString *)title forSegmentAtIndex:(NSUInteger)segment;
[align=left][segmentedControl setTitle:@"two" forSegmentAtIndex:1];//设置指定索引的题目[/align]效果:
7. - (void)setImage:(UIImage *)image forSegmentAtIndex:(NSUInteger)segment;
[align=left][segmentedControl setImage:[UIImage imageNamed:@"lan.png"] forSegmentAtIndex:3];//设置指定索引的图片[/align]8.-(void)insertSegmentWithTitle:(NSString*)title atIndex:(NSUInteger)segment animated:(BOOL)animated;
[align=left][segmentedControl insertSegmentWithTitle:@"add" atIndex:3 animated:NO];//在指定索引插入一个选项并设置题目[/align][align=left]效果:[/align]
9.-(void)insertSegmentWithImage:(UIImage *)image atIndex:(NSUInteger)segment animated:(BOOL)animated;
[segmentedControl insertSegmentWithImage:[UIImage imageNamed:@"mei.png"]atIndex:2 animated:NO];//在指定索引插入一个选项并设置图片10.- (void)removeSegmentAtIndex:(NSUInteger)segment animated:(BOOL)animated;
[align=left][segmentedControl removeSegmentAtIndex:0 animated:NO];//移除指定索引的选项[/align][align=left]效果:[/align]
11. - (void)removeAllSegments;
[align=left] //移除所有选项[/align]//[segmentedControl removeAllSegments];
12. - (void)setWidth:(CGFloat)width forSegmentAtIndex:(NSUInteger)segment; // set to 0.0 width to autosize. default is 0.0
选项卡的宽度默认为0,此方法能够设置选项卡宽度。[align=left][segmentedControl setWidth:70.0 forSegmentAtIndex:2];//设置指定索引选项的宽度[/align]
效果:
13. - (void)setContentOffset:(CGSize)offset forSegmentAtIndex:(NSUInteger)segment;// adjust offset of image or text inside the segment. default is (0,0)
[segmentedControl setContentOffset:CGSizeMake(10,0)forSegmentAtIndex:1];设置选项卡内部文字或者图片与默认位置的偏移量,默认位置在选项卡的中心。
效果:
14. - (void)setEnabled:(BOOL)enabled forSegmentAtIndex:(NSUInteger)segment;
[align=left][segmentedControl setEnabled:NO forSegmentAtIndex:4];//设置指定索引选项不可选[/align]
15.增加事件响应机制
监听的是这个事件:UIControlEventValueChanged,值改变事件[segmentedControl addTarget:self action:@selector(itemClick) forControlEvents:UIControlEventValueChanged];
相关文章推荐
- iOS开发之路--微博“更多”页面
- iOS开发之路--微博骨架搭建
- IOS开发代码分享之获取启动画面图片的string
- IOS开发之路--C语言数组和字符串
- IOS开发代码分享之用nstimer实现倒计时功能
- IOS开发代码分享之设置UISearchBar的背景颜色
- ios开发之环境搭建-01
- 在开发iOS程序时对日期处理的总结
- iOS开发——keychain的使用
- iOS Graphics Technologies iOS 图形技术
- iOS开发异常错误总结
- 学习Objective-C:入门手册
- iOS开发 简单实现视频音频的边下边播
- iOS开发 — Quartz 2D知识点应用 (制作了一个Demo,源代码)
- ios开发对配置文件plist的操作
- iphone5和4的屏幕兼容问题
- iOS开发学习笔记 1-0 开篇
- iOS开发学习笔记 2-1 C语言部分 初识C语言
- iOS开发学习笔记 2-2 C语言部分 类型、运算符与表达式
- iOS开发学习笔记 2-3 C语言部分 控制流