一、简介
<<分段控件提供一栏按钮(有时称为按钮栏),但只能激活其中一个按钮。分段控件会导致用户在屏幕上看到的内容发生变化。它们常用于在不同类别的信息之间选择,或在不同的应用屏幕之间切换
<<继承关系:UISegmentedControl-->UIControl-->UIView-->UIResponder-->NSObject
格式为
1-->初始化(作用)
@property(nonatomic) UISegmentedControlStyle segmentedControlStyle NS_DEPRECATED_IOS(2_0, 7_0, "The segmentedControlStyle property no longer has any effect") __TVOS_PROHIBITED;//废弃属性 (这是说明)
二、UISegmentedControl的属性(属性的顺序与苹果API一致)
1--> 初始化方法
-(instancetype)initWithItems:(nullable NSArray *)items; // items 可以是 NSStrings or UIImages. 控件的大小会自动调整为适合的内容。
2-->设置UISegmentedControl的风格
@property(nonatomic) UISegmentedControlStyle segmentedControlStyle NS_DEPRECATED_IOS(2_0, 7_0, "The segmentedControlStyle property no longer has any effect") __TVOS_PROHIBITED;//废弃属性
3-->设置在点击后是否恢复原样
@property(nonatomic,getter=isMomentary) BOOL momentary; //如果设置,则在跟踪结束后,我们不会继续显示选定的状态。默认是 NO
4-->获取总选项数
@property(nonatomic,readonly) NSUInteger numberOfSegments;
5-->是否根据segment的内容改变segment的宽度
@property(nonatomic) BOOL apportionsSegmentWidthsByContent NS_AVAILABLE_IOS(5_0);
6-->在指定索引插入一个选项并设置题目
-(void)insertSegmentWithTitle:(nullable NSString *)title atIndex:(NSUInteger)segment animated:(BOOL)animated;
7-->在指定索引插入一个选项并设置图片
-(void)insertSegmentWithImage:(nullable UIImage *)image atIndex:(NSUInteger)segment animated:(BOOL)animated;
8-->移除指定索引的选项
-(void)removeSegmentAtIndex:(NSUInteger)segment animated:(BOOL)animated;
9-->移出所有segment
-(void)removeAllSegments;
10-->设置指定索引的题目
-(void)setTitle:(nullable NSString *)title forSegmentAtIndex:(NSUInteger)segment;
11-->获取指定索引选项的标题
-(nullable NSString *)titleForSegmentAtIndex:(NSUInteger)segment;
12-->设置指定索引的图片
-(void)setImage:(nullable UIImage *)image forSegmentAtIndex:(NSUInteger)segment;
13-->获取指定索引选项的图片
-(nullable UIImage *)imageForSegmentAtIndex:(NSUInteger)segment;
14-->设置Item的宽度
-(void)setWidth:(CGFloat)width forSegmentAtIndex:(NSUInteger)segment;
15-->获取指定索引选项的宽度
-(CGFloat)widthForSegmentAtIndex:(NSUInteger)segment;
16-->设置内容偏移
-(void)setContentOffset:(CGSize)offset forSegmentAtIndex:(NSUInteger)segment;
17-->获取内容偏移
-(CGSize)contentOffsetForSegmentAtIndex:(NSUInteger)segment;
18-->设置segment是否可用
-(void)setEnabled:(BOOL)enabled forSegmentAtIndex:(NSUInteger)segment; // default is YES
19-->判断指定索引选项是否可选
-(BOOL)isEnabledForSegmentAtIndex:(NSUInteger)segment;
20-->设置默认选择项索引
@property(nonatomic) NSInteger selectedSegmentIndex;
21-->设置segments的颜色
@property(null_resettable,nonatomic,strong) UIColor *tintColor;
22-->设置背景图
-(void)setBackgroundImage:(nullable UIImage *)backgroundImage forState:(UIControlState)state barMetrics:(UIBarMetrics)barMetrics NS_AVAILABLE_IOS(5_0) UI_APPEARANCE_SELECTOR;
23-->获取背景图
-(nullable UIImage *)backgroundImageForState:(UIControlState)state barMetrics:(UIBarMetrics)barMetrics NS_AVAILABLE_IOS(5_0) UI_APPEARANCE_SELECTOR;
24-->设置标签之间分割线的图案
-(void)setDividerImage:(nullable UIImage *)dividerImage forLeftSegmentState:(UIControlState)leftState rightSegmentState:(UIControlState)rightState barMetrics:(UIBarMetrics)barMetrics NS_AVAILABLE_IOS(5_0) UI_APPEARANCE_SELECTOR;
25-->获取标签之间分割线的图案
-(nullable UIImage *)dividerImageForLeftSegmentState:(UIControlState)leftState rightSegmentState:(UIControlState)rightState barMetrics:(UIBarMetrics)barMetrics NS_AVAILABLE_IOS(5_0) UI_APPEARANCE_SELECTOR;
26-->通过Attribute字符串属性字典设置标签标题
-(void)setTitleTextAttributes:(nullable NSDictionary *)attributes forState:(UIControlState)state NS_AVAILABLE_IOS(5_0) UI_APPEARANCE_SELECTOR;
27-->获取Attribute字符串属性字典
-(nullable NSDictionary *)titleTextAttributesForState:(UIControlState)state NS_AVAILABLE_IOS(5_0) UI_APPEARANCE_SELECTOR;
28-->设置标签内容的偏移量
-(void)setContentPositionAdjustment:(UIOffset)adjustment forSegmentType:(UISegmentedControlSegment)leftCenterRightOrAlone barMetrics:(UIBarMetrics)barMetrics NS_AVAILABLE_IOS(5_0) UI_APPEARANCE_SELECTOR;
29-->获取自定义偏移量
-(UIOffset)contentPositionAdjustmentForSegmentType:(UISegmentedControlSegment)leftCenterRightOrAlone barMetrics:(UIBarMetrics)barMetrics NS_AVAILABLE_IOS(5_0) UI_APPEARANCE_SELECTOR; |