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;





Comments