-
本文章简单介绍几个UI小控件,对这些控件的属相和方法进行了简单的总结。控件包括 UIsegmentedControl, UIStepper ,UIActivityIndicatorView, UISwitch UIPagerControl ,UIProgressView,UISlider.
UIsegmentedControl
初始化
- (instancetype)init;
- (instancetype)initWithFrame:(CGRect)frame;
//需要配合一个数组设置。数组内容为它每个部分的标题
- (instancetype)initWithItems:(NSArray *)items;
UISegmentControl 初始化的时候可以不用设置 frame 属性
其 frame 默认值是 { {0, 0}, { 自动宽度, 29}}
属性
//默认值no,设置为yes就无法保持被选中状态,就像按钮一样了。
@property (nonatomic, getter=isMomentary) BOOL momentary;
//获取标签个数,(只读),没有set方法
@property (nonatomic, readonly) NSUInteger numberOfSegments;
//设置为yes,各部分的宽度自动适应其内容,设置为no,其宽度为各部分的最大宽度。默认值时no。
@property (nonatomic) BOOL apportionsSegmentWidthsByContent;
//被选中选线的索引,既第几个被选中,就是几,从0开始。
@property (nonatomic) NSInteger selectedSegmentIndex; ⭐️
//着色区域的颜色(标题,边框)
@property (nonatomic, strong) UIColor *tintColor;
常用方法
//对应位置插入一个选项并设置标题
- (void)insertSegmentWithTitle:(nullable NSString *)title atIndex:(NSUInteger)segment animated:(BOOL)animated;
//对应插入选项并设置图片
- (void)insertSegmentWithImage:(nullable UIImage *)image atIndex:(NSUInteger)segment animated:(BOOL)animated;
//移除对应的xuanxiang
- (void)removeSegmentAtIndex:(NSUInteger)segment animated:(BOOL)animated;
//移除所有的选项
- (void)removeAllSegments;
//设置某个选项不被选中
- (void)setEnabled:(BOOL)enabled forSegmentAtIndex:(NSUInteger)segment;
//判断某个选项是否能被选中
- (BOOL)isEnabledForSegmentAtIndex:(NSUInteger)segment;
//设置选项的标题
- (void)setTitle:(nullable NSString *)title forSegmentAtIndex:(NSUInteger)segment;
//设置选项图片
- (void)setImage:(nullable UIImage *)image forSegmentAtIndex:(NSUInteger)segment;
//设置对应选项的宽度
- (void)setWidth:(CGFloat)width forSegmentAtIndex:(NSUInteger)segment;
//设置对应选项的标题偏移值
- (void)setContentOffset:(CGSize)offset forSegmentAtIndex:(NSUInteger)segment;
//获取某选项的标题
- (nullable NSString *)titleForSegmentAtIndex:(NSUInteger)segment;
//获取某选项的图片
- (nullable UIImage *)imageForSegmentAtIndex:(NSUInteger)segment;
//获取某选项的宽度,只有设置了对应的宽度才有,不设置的获取到的事0;
- (CGFloat)widthForSegmentAtIndex:(NSUInteger)segment;
//获取某选项的偏移值,是一结构体。
- (CGSize)contentOffsetForSegmentAtIndex:(NSUInteger)segment;