UISegmentedControl
来源:互联网 发布:男士牛仔衣搭配知乎 编辑:程序博客网 时间:2024/06/03 16:20
概述:
UISegmentedControl (分段控件), 相当于集成了若干个Button, 通常我们会点击不同的segment来切换不同的view.并且具有指示功能. iOS5 之后,可以自定义控件, 包括分段按钮的添加/ 删除/ , 外观的设定. 以及单个分段区域的设定.
其事件类型为 UIControlEventValueChang
1. 基本属性
管理分段内容
- (void)setImage:(UIImage *)
image
forSegmentAtIndex:(NSUInteger)
segment
- (UIImage *)imageForSegmentAtIndex:(NSUInteger)
segment
- (void)setTitle:(NSString *)
title
forSegmentAtIndex:(NSUInteger)
segment
- (NSString *)titleForSegmentAtIndex:(NSUInteger)
segment
指定下标设置图片
获取指定下标的图片
指定下标设置标题
获取指定下标的标题
管理分段控件
- (void)insertSegmentWithImage:(UIImage *)
image
atIndex:(NSUInteger)segment
animated:(BOOL)
animated
- (void)insertSegmentWithTitle:(NSString *)
title
atIndex:(NSUInteger)segment
animated:(BOOL)
animated
@property(nonatomic, readonly) NSUInteger numberOfSegments
- (void)removeAllSegments
- (void)removeSegmentAtIndex:(NSUInteger)
segment
animated:(BOOL)
animated
@property(nonatomic) NSInteger selectedSegmentIndex
指定下标/ 标题 插入分段
指定下标/ 图片 插入图片
分段个数
移除所有分段
移除指定分段
选中某一分段
管理控件的行为和外观
@property(nonatomic, getter=isMomentary) BOOL momentary
@property(nonatomic) UISegmentedControlStyle segmentedControlStyle
- (void)setEnabled:(BOOL)
enabled
forSegmentAtIndex:(NSUInteger)
segment
- (BOOL)isEnabledForSegmentAtIndex:(NSUInteger)
segment
- (void)setContentOffset:(CGSize)
offset
forSegmentAtIndex:(NSUInteger)
segment
- (CGSize)contentOffsetForSegmentAtIndex:(NSUInteger)
segment
- (void)setWidth:(CGFloat)
width
forSegmentAtIndex:(NSUInteger)
segment
- (CGFloat)widthForSegmentAtIndex:(NSUInteger)
segment
@property(nonatomic) BOOL apportionsSegmentWidthsByContent
选中时闪一下即表示选中
分段类型 默认不分组
指定下标分段是否可编辑
设置指定下标 内容区域大小
指定下标分段, 设置宽度
If the value of this property is
YES
, for segments whose width value is 0
, the control attempts to adjust segment widths based on their content widths.自定义外观
@property(nonatomic, retain) UIColor *tintColor
初始化方法
- (instancetype)initWithItems:(NSArray *)
items
- (void)setTitleTextAttributes:(NSDictionary *)
attributes
forState:(UIControlState)
state
实例
//segmentedControl对象的创建
UISegmentedControl *segmC = [[UISegmentedControl alloc]initWithItems:@[@"认真",@"负责",@"用心",@"耐心"]];
segmC.frame = CGRectMake(30,100,CGRectGetWidth(self.view.bounds) - 60,40);
//为分段控制绑定响应方法--segmentControl是通过切换分段来做出响应方法的,所以其对应的事件类型为:UIControlEventValueChanged
[segmC addTarget:selfaction:@selector(handleSegmCAction:)forControlEvents:UIControlEventValueChanged];
//设置被默认被选中的下标 -- 分段控件默认都有被选中的分段,分段除了切换操作外还有指示说明操作的作用
segmC.selectedSegmentIndex = 0;
[self handleSegmCAction:segmC];
//通过表面着色属性tintColor修改分段控件的外观
segmC.tintColor = [UIColor lightGrayColor]; //分段控件默认的背景颜色是无色
//第2节:为每个分段添加图片
for (int i = 0; i < segmC.numberOfSegments; i++) //numberOfSegments:(只读属性)控件中子控件的个数
{
NSString *imaN = [NSString stringWithFormat:@"%d",i +1];
UIImage *image = [[UIImage imageNamed:imaN]imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]; //修该图片的渲染模式,将其设置为原始模式
[segmC setImage:imageforSegmentAtIndex:i];
}
[self.viewaddSubview:segmC];
UISegmentedControl *segmC = [[UISegmentedControl alloc]initWithItems:@[@"认真",@"负责",@"用心",@"耐心"]];
segmC.frame = CGRectMake(30,100,CGRectGetWidth(self.view.bounds) - 60,40);
//为分段控制绑定响应方法--segmentControl是通过切换分段来做出响应方法的,所以其对应的事件类型为:UIControlEventValueChanged
[segmC addTarget:selfaction:@selector(handleSegmCAction:)forControlEvents:UIControlEventValueChanged];
//设置被默认被选中的下标 -- 分段控件默认都有被选中的分段,分段除了切换操作外还有指示说明操作的作用
segmC.selectedSegmentIndex = 0;
[self handleSegmCAction:segmC];
//通过表面着色属性tintColor修改分段控件的外观
segmC.tintColor = [UIColor lightGrayColor]; //分段控件默认的背景颜色是无色
//第2节:为每个分段添加图片
for (int i = 0; i < segmC.numberOfSegments; i++) //numberOfSegments:(只读属性)控件中子控件的个数
{
NSString *imaN = [NSString stringWithFormat:@"%d",i +1];
UIImage *image = [[UIImage imageNamed:imaN]imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal]; //修该图片的渲染模式,将其设置为原始模式
[segmC setImage:imageforSegmentAtIndex:i];
}
[self.viewaddSubview:segmC];
[segmC release];
0 0
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- UISegmentedControl
- 【UISegmentedControl】
- 【线性代数公开课MIT Linear Algebra】 第十五课 Ax=b与投影矩阵
- 三极管的三种工作状态究竟该怎么理解?
- 协方差矩阵、相关矩阵的详细说明
- 关于B树,B+树
- hdoj 2028 Lowest Common Multiple Plus【GCD】
- UISegmentedControl
- UISwitch
- java---表、栈和队列
- 逻辑运算符(And、AndAlso、Or、OrElse、&&、&、||、|)
- 线性判别分析(Linear Discriminant Analysis, LDA)算法分析
- Xcode终端爆炸之显示TEMPLATE END的解决办法
- 云服务器是什么 ?云服务器有什么优势 ?
- TCP/IP详解 卷1 笔记 第17章 TCP:传输控制协议
- UIButton