IOS的segmentedControl(分段器控件)的一些常用属性
#pragma mark - 创建不同的分段器
//初始化方法:传入的数组可以是字符串也可以是UIImage对象的图片数组
UISegmentedControl *mysegmented = [[UISegmentedControl alloc] initWithItems:@[@"左边",@"我是中间",@"右边"]];
mysegmented.frame = CGRectMake(50, 200, kScreenWidth-100, 40);
[self.view addSubview: mysegmented];
//第二种创建方式
UISegmentedControl *mysegmented2 = [[UISegmentedControl alloc] initWithFrame:CGRectMake(100, 200, 300, 40)];
//animated为NO即表示不是即时修改,等点击事件结束后再响应
[mysegmented2 insertSegmentWithTitle:@"聊天" atIndex:1 animated:YES];
[mysegmented2 insertSegmentWithTitle:@"通话" atIndex:0 animated:YES];
// [self.view addSubview:mysegmented2];
//创建一个图片数组,用图片来作为分段器的元素
NSArray *imageArray = @[[UIImage imageNamed: @"prev"],[UIImage imageNamed: @"next"]];
UISegmentedControl *yoursegmented = [[UISegmentedControl alloc] initWithItems:imageArray];
yoursegmented.frame = CGRectMake(100, 450, kScreenWidth-200, 65);
[self.view addSubview: yoursegmented];

#pragma mark - 重设标签标题和获取标签标题
[mysegmented setTitle: @"我是修改过的标签" forSegmentAtIndex:1];
NSString *titleString = [mysegmented titleForSegmentAtIndex: 1];
NSLog(@"%@", titleString);
//也可以重新设置图片标签和获取标签图片
//- (void)setImage:(UIImage *)image forSegmentAtIndex:(NSUInteger)segment;
//- (UIImage *)imageForSegmentAtIndex:(NSUInteger)segment;

/* 以下是在ios开发中,对segmentedControl控件的一些属性的用法解析,只能用手机查看不能自己运行的也没有关系,以下内容是带图片的。*/
#pragma mark - 设置标签的颜色(默认为blue)以及图片
//背景颜色
mysegmented.backgroundColor = [UIColor greenColor];
//文字的颜色,边框的颜色,以及选中的标签的颜色
mysegmented.tintColor = [UIColor redColor];
//设置标签的背景图片,还可以获取分段器的背景图片
//[mysegmented setBackgroundImage:[UIImage imageNamed:@"prev"] forState:UIControlStateNormal barMetrics:UIBarMetricsDefault];
//(设置的是整个分段器的背景图片),UIBarMetrics是一个枚举,default默认背景图片充满整个分段器

#pragma mark - 设置分段器的分割线的图片(同样的,也可以获取图片)
// - (void)setDividerImage:(UIImage *)dividerImage forLeftSegmentState:(UIControlState)leftState rightSegmentState:(UIControlState)rightState barMetrics:(UIBarMetrics)barMetrics
#pragma mark - 选中状态(若不指定下标,那么根据创建的items顺序,下标从0开始增长)
mysegmented.selectedSegmentIndex = 0;
yoursegmented.selectedSegmentIndex = 1;

#pragma mark - numberOfSegments,获取标签的个数,只读的
NSInteger i = mysegmented.numberOfSegments;
NSLog(@"一共有%ld个标签",i);
#pragma mark - 设置标签宽度是否随内容自适应(设置为NO则表示所有标签宽度一致为最大的宽度)
mysegmented.apportionsSegmentWidthsByContent = NO;
#pragma mark - 插入文字标签或图片在index位置
[mysegmented insertSegmentWithTitle: @"我是插入的标签" atIndex:2 animated:YES];
[yoursegmented insertSegmentWithImage: [UIImage imageNamed: @"next"] atIndex:0 animated:YES];

#pragma mark - 根据索引删除标签或删除所有标签
[mysegmented removeSegmentAtIndex: 1 animated: YES];
//[mysegmented removeSegmentAtIndex: 1 animated: NO];
//删除所有标签 [mysegmented removeAllSegments];

#pragma mark - 根据索引设置相应标签宽度和获取标签宽度
//若setWidth设置为0.0,则默认为自适应宽度
[yoursegmented setWidth: 50.0 forSegmentAtIndex:0];
//获取标签宽度
//- (CGFloat)widthForSegmentAtIndex:(NSUInteger)segment;

#pragma mark - 设置标签内容的偏移量和获取偏移量
[mysegmented setContentOffset: CGSizeMake(20.0, 0) forSegmentAtIndex:0];
//获取偏移量
//- (CGSize)contentOffsetForSegmentAtIndex:(NSUInteger)segment;

#pragma mark - 根据索引设置标签是否有效(默认有效)和获取是否有效
//- (void)setEnabled:(BOOL)enabled forSegmentAtIndex:(NSUInteger)segment;
//- (BOOL)isEnabledForSegmentAtIndex:(NSUInteger)segment;
#pragma mark - 点击事件(可以带参数)
[mysegmented addTarget:self action:@selector(segmentedAction) forControlEvents:UIControlEventValueChanged];
//这里需创建另外的视图控制器进行演示
}
//点击事件
- (void) segmentedAction{
FirstViewController *firstVC = [[FirstViewController alloc] init];
[self.view addSubview:firstVC.view];
//从父视图上移除 [_firstVC.view removeFromSuperview];
}
/*
以上是我自己总结的分段器控件的一些基本属性,剪掉图片,以上代码可以直接复制粘贴到自己的工程中运行,可自行查看和修改结果。对以上有异议或者想和我一起讨论的,可以加我的qq 78928861,大家一起讨论,一起学习。
*/
IOS的segmentedControl(分段器控件)的一些常用属性的更多相关文章
- DEV控件:gridControl常用属性设置(转载)
特别长,先撸下来再说 1.隐藏最上面的GroupPanel gridView1.OptionsView.ShowGroupPanel=false; 2.得到当前选定记录某字段的值 sValue=T ...
- DEV控件:gridControl常用属性设置
1.隐藏最上面的GroupPanel gridView1.OptionsView.ShowGroupPanel=false; 2.得到当前选定记录某字段的值 sValue=Table.Rows[g ...
- 【IOS 开发】基本 UI 控件详解 (UISegmentedControl | UIImageView | UIProgressView | UISlider | UIAlertView )
转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/50163725 一. 分段控件 (UISegmentedControl) 控件展 ...
- ios开发中关闭textview控件的虚拟键盘
在ios开发中,textfield控件在点击的时候出现虚拟键盘,关掉虚拟键盘可以通过虚拟键盘中的done button和点击view中的任意地方来关闭虚拟键盘. 1.第一种方法是textfield控件 ...
- iOS开发UI篇—UIScrollView控件实现图片缩放功能
iOS开发UI篇—UIScrollView控件实现图片缩放功能 一.缩放 1.简单说明: 有些时候,我们可能要对某些内容进行手势缩放,如下图所示 UIScrollView不仅能滚动显示大量内容,还能对 ...
- iOS开发UI篇—UIScrollView控件介绍
iOS开发UI篇—UIScrollView控件介绍 一.知识点简单介绍 1.UIScrollView控件是什么? (1)移动设备的屏幕⼤大⼩小是极其有限的,因此直接展⽰示在⽤用户眼前的内容也相当有限 ...
- iOS开发UI篇—UITableview控件简单介绍
iOS开发UI篇—UITableview控件简单介绍 一.基本介绍 在众多移动应⽤用中,能看到各式各样的表格数据 . 在iOS中,要实现表格数据展示,最常用的做法就是使用UITableView,UIT ...
- iOS开发UI篇—UITableview控件基本使用
iOS开发UI篇—UITableview控件基本使用 一.一个简单的英雄展示程序 NJHero.h文件代码(字典转模型) #import <Foundation/Foundation.h> ...
- iOS开发UI篇—UITableview控件使用小结
iOS开发UI篇—UITableview控件使用小结 一.UITableview的使用步骤 UITableview的使用就只有简单的三个步骤: 1.告诉一共有多少组数据 方法:- (NSInteger ...
随机推荐
- idhttp.post方式 调用datasnap rest 远程方法
idhttp.get方式调用,这种比较简单,大家都会.post方式网上却没有任何成功的代码,本人也是摸索了一个上午才搞定. 分享给大家. (1)post方式调用的远程方法,方法名必须加“update” ...
- 单机c/s软件如何让老板在异地看销售营业报表
单机软件,让人的感觉就只能在本地使用. 单机版c/s软件,数据存放在本机上,老板想要查看销售报表的话,需要跑到公司的那台电脑上才能查看,这对于在外面四处跑业务的老板来说,基本上是不可能做到的.但每天的 ...
- uCos 没有延时Tick滴答定时器测试
原来学uCos只是表面,今天才发现uCos没有心跳也是可以活的,只是延时功能. 即:OSTimeDly.OSTimexxx 头的功能不能使用. 如果有是用OSTimexxx,任务将会卡死.其实,OST ...
- iOS几个效果动画-------------------(实例详讲)qq粘性效果
这几天做了一些简单iOS的效果图,感觉苹果官方已经帮我们做了很多了,我们只是站在巨人的肩膀上编程,这些也没什么难的,最难的也就是用到了初中的三角函数,先让大家看看这几个动画吧.先列这几个把,由上而下分 ...
- 一、JSP、Servlet 概要
//jsp 1.Web.xml可以配置JSP,SERVLET,LISTENER,FILTER,标签库,JAAS,资源引用,默认页面(首页,404...),metadata-complete 2.JSP ...
- .NET自带IOC容器MEF之初体验
.NET自带IOC容器MEF之初体验 本文主要把MEF作为一种IOC容器进行讲解,.net中可用的IOC容器非常多,如 CastleWindsor,Unity,Autofac,ObjectBuil ...
- iOS安全系列之一:HTTPS (轉載)
如何打造一个安全的App?这是每一个移动开发者必须面对的问题.在移动App开发领域,开发工程师对于安全方面的考虑普遍比较欠缺,而由于iOS平台的封闭性,遭遇到的安全问题相比于Android来说要少得多 ...
- 60款开源云应用【Part 2】(60 Open Source Apps You Can Use in the Cloud)
60款开源云应用[Part 2](60 Open Source Apps You Can Use in the Cloud) 本篇翻译自http://www.datamation.com/open-s ...
- UVa 131 - The Psychic Poker Player
题目:手里有五张牌,桌上有一堆牌(五张).你能够弃掉手中的k张牌,然后从牌堆中取最上面的k个. 比較规则例如以下:(按优先级排序) 1.straight-flush:同花顺.牌面为T(10) - A, ...
- delphi中使用webbrowser提交表单
转自:http://blog.163.com/hehaifeng1984@126/blog/static/6900113620133504644998/ 我们以百度搜索为例,使用webbrowser组 ...