iOS组件之UISegmentedControl详解
引言
UISegmentedControl对象是一个水平控制使多个区段,每个区段用作离散的按钮。分段控件提供了一次小型的手段组合在一起的一些控制。
UISegmentedControl继承于UIControl(有关UIControl请参照《iOS组件之UIControl详解》).
目录
1、基本属性及方法
2、iOS 5.0新增
1、基本属性及方法
// 初始化UISegmentedControl(items可以是NSString类型或者UIImages)
- (id)initWithItems:(NSArray *)items;
//设置样式 (该样式只在ios2.0~7.0有效果)
UISegmentedControlStyle segmentedControlStyle;
//设置在点击后是否恢复原样(默认是NO)
BOOL momentary;
// 设置总选项数
NSUInteger numberOfSegments;
//是否根据segment的内容改变segment的宽度 (只使用ios5.0,默认为NO)
BOOL apportionsSegmentWidthsByContent;
//在指定的索引插入一个选项并设置题目
- (void)insertSegmentWithTitle:(NSString *)title atIndex:(NSUInteger)segment animated:(BOOL)animated;
//在指定的索引插入一个选项并设置图片
- (void)insertSegmentWithImage:(UIImage *)image atIndex:(NSUInteger)segment animated:(BOOL)animated;
//移除指定索引的选项
- (void)removeSegmentAtIndex:(NSUInteger)segment animated:(BOOL)animated;
//移除所有的选项
- (void)removeAllSegments;
//设置指定索引题目
- (void)setTitle:(NSString *)title forSegmentAtIndex:(NSUInteger)segment;
//获取指定索引选项的标题
- (NSString *)titleForSegmentAtIndex:(NSUInteger)segment;
//设置指定索引的图片
- (void)setImage:(UIImage *)image forSegmentAtIndex:(NSUInteger)segment;
//获取指定索引选项的图片
- (UIImage *)imageForSegmentAtIndex:(NSUInteger)segment;
//设置指定索引选项的宽度(默认是0)
- (void)setWidth:(CGFloat)width forSegmentAtIndex:(NSUInteger)segment;
//获取指定索引选项的宽度
- (CGFloat)widthForSegmentAtIndex:(NSUInteger)segment;
//设置选项中图片等的左上角的位置
- (void)setContentOffset:(CGSize)offset forSegmentAtIndex:(NSUInteger)segment;
//获取选项中图片等的左上角的位置
- (CGSize)contentOffsetForSegmentAtIndex:(NSUInteger)segment;
//设置指定索引选项不可选
- (void)setEnabled:(BOOL)enabled forSegmentAtIndex:(NSUInteger)segment;
//判断指定索引选项是否可选
- (BOOL)isEnabledForSegmentAtIndex:(NSUInteger)segment;
//设置默认选项索引
NSInteger selectedSegmentIndex;
//设置UISegmentedControl的颜色
UIColor *tintColor;
2、iOS 5.0新增
//设置在某个状态下的背景图片
- (void)setBackgroundImage:(UIImage *)backgroundImage forState:(UIControlState)state barMetrics:(UIBarMetrics)barMetrics;
//获取在某个状态下的背景图片
- (UIImage *)backgroundImageForState:(UIControlState)state barMetrics:(UIBarMetrics)barMetrics
//设置分割线背景图片
- (void)setDividerImage:(UIImage *)dividerImage forLeftSegmentState:(UIControlState)leftState rightSegmentState:(UIControlState)rightState barMetrics:(UIBarMetrics)barMetCT
//获取分割线背景图片
- (UIImage *)dividerImageForLeftSegmentState:(UIControlState)leftState rightSegmentState:(UIControlState)rightState barMetrics:(UIBarMetrics)barMeE
//设置文字显示样式
- (void)setTitleTextAttributes:(NSDictionary *)attributes forState:(UIControlState)state;
//获取文字显示样式
- (NSDictionary *)titleTextAttributesForState:(UIControlState)state;
//设置选项中内容的调整位置
- (void)setContentPositionAdjustment:(UIOffset)adjustment forSegmentType:(UISegmentedControlSegment)leftCenterRightOrAlone barMetrics:(UIBarMetrics)barMetrics;
//获取选项中内容的调整位置
- (UIOffset)contentPositionAdjustmentForSegmentType:(UISegmentedControlSegment)leftCenterRightOrAlone barMetrics:(UIBarMetrics)barMetrics;