UISegmentedControl 功能简单 分析
2024-09-01 23:21:25
UISegmentedControl类似于UIButton,它可以提供多个选择操作,响应事件,但具有很大的局限性,我们更多的是使用自定义的,不过在这里还是介绍下它的基本用法.
NSArray *segmentedArray = [[NSArrayalloc]initWithObjects:@"1",@"2",@"3",@"4",nil];
//初始化UISegmentedControl
UISegmentedControl *segmentedControl = [[UISegmentedControlalloc]initWithItems:segmentedArray];
segmentedControl.frame = CGRectMake(20.0,……)
// 设置默认选择项索引
segmentedControl.selectedSegmentIndex = 2;
segmentedControl.tintColor = [UIColor redColor];
// 有基本四种样式
segmentedControl.segmentedControlStyle = UISegmentedControlStylePlain;
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBordered;
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBezeled; // 设置在点击后是否恢复原样
segmentedControl.momentary = YES;
[segmentedControl setTitle:@"two" forSegmentAtIndex:1];//设置指定索引的题目
[segmentedControl setImage:[UIImage imageNamed:@"btn_jyy.png"] forSegmentAtIndex:];//设置指定索引的图片
// 在指定索引插入一个选项并设置图片
[segmentedControl insertSegmentWithImage:[UIImage imageNamed:@"mei.png"] atIndex:2 animated:NO];
// 在指定索引插入一个选项并设置题目
[segmentedControl insertSegmentWithTitle:@"insert" atIndex:3 animated:NO]; // 移除指定索引的选项
[segmentedControl removeSegmentAtIndex:0 animated:NO];
// 设置指定索引选项的宽度
[segmentedControl setWidth:70.0 forSegmentAtIndex:2];
// 设置选项中图片等的左上角的位置
[segmentedControl setContentOffset:CGSizeMake(10.0,10.0) forSegmentAtIndex:4]; //获取指定索引选项的图片imageForSegmentAtIndex:
UIImageView *imageForSegmentAtIndex = [[UIImageViewalloc]initWithImage:[segmentedControl imageForSegmentAtIndex:1]];
imageForSegmentAtIndex.frame = CGRectMake(60.0, 120.0, 30.0, 30.0); ; //获取指定索引选项的标题titleForSegmentAtIndex
UILabel *titleForSegmentAtIndex = [[UILabel alloc]initWithFrame:CGRectMake(100.0, 160.0, 30.0, 30.0)];
titleForSegmentAtIndex.text = [segmentedControl titleForSegmentAtIndex:0]; //获取总选项数segmentedControl.numberOfSegments
UILabel *numberOfSegments = [[UILabel alloc]initWithFrame:CGRectMake(140.0, 170.0, 30.0, 30.0)];
numberOfSegments.text = [NSString stringWithFormat:@"%d",segmentedControl.numberOfSegments]; //获取指定索引选项的宽度widthForSegmentAtIndex:
UILabel *widthForSegmentAtIndex = [[UILabel alloc]initWithFrame:CGRectMake(180.0, 210.0, 70.0, 30.0)];
widthForSegmentAtIndex.text = [NSString stringWithFormat:@"%f",[segmentedControl widthForSegmentAtIndex:2]]; // [segmentedControl setEnabled:NO forSegmentAtIndex:4];//设置指定索引选项不可选
// BOOL enableFlag = [segmentedControl isEnabledForSegmentAtIndex:4];//判断指定索引选项是否可选
[mySegmentedControladdTarget:selfaction:@selector(didClicksegmentedControlAction:)forControlEvents:UIControlEventValueChanged]; -(void)didClicksegmentedControlAction:(UISegmentedControl *)Seg{
NSInteger Index = Seg.selectedSegmentIndex;
NSLog(@"Index %i", Index);
switch (Index) {
case 0:
[self selectmyView1];
break;
case 1:
[self selectmyView2];
break;
case 2:
[self selectmyView3];
break;
case 3:
[self selectmyView4];
break;
…………………………………….
default:
break;
}
} 学习自:http://www.tuicool.com/articles/yUfURj
最新文章
- Java学习笔记五——流程控制
- ppt动画制作bullets
- 设置三思LED的IP地址跟端口号
- Linux-LVS+keepalived-Testing
- Linux tar指令
- UVALive 3959 Rectangular Polygons (排序贪心)
- 分享9款用HTML5/CSS3制作的动物人物动画
- (转)使用SVN+CruiseControl+ANT实现持续集成之一
- 还在纠结 Flux 或 Relay,或许 Redux 更适合你
- 深入浅出数据结构C语言班(11)——简要介绍算法时间复杂度
- linux memcached Session共享
- 潭州课堂25班:Ph201805201 tornado 项目 第七课 界面美化和静态文件处理(课堂笔记)
- Oracle中查看所有表和字段
- Guava 12:Guava EventBus源码剖析
- 大数据spark学习第一周Scala语言基础
- 《深入应用C++11:代码优化与工程级应用》勘误表
- Numpy常用API
- mysql练习题3
- HDMI中checksum计算法
- Windows 之 可以Ping通服务器但无法使用服务器连接的共享打印机
热门文章
- 转换vmware的vmdk格式到qcow2或者raw格式
- 【Linux】CentOS7上安装JDK 和卸载 JDK 【rpm命令的使用】
- [ACM] POJ 1035 Spell checker (单词查找,删除替换添加不论什么一个字母)
- LINQ获取两个List的交集
- 为什么实现Serializbale接口就能够进行序列化?
- linux:ping不通www.baidu.com
- ansible自动化工具使用
- 2017.9.15 postgres使用postgres_fdw实现跨库查询
- 如何使用CodeSmith批量生成代码
- 倍福TwinCAT(贝福Beckhoff)基础教程 松下伺服驱动器报错 21.0怎么办