简述UISegment的属性和用法
1.segmentedControlStyle
設(shè)置segment的顯示樣式。
typedef NS_ENUM(NSInteger, UISegmentedControlStyle) {
UISegmentedControlStylePlain,???? // large plain 系統(tǒng)默認(rèn)平板樣式
segmentedControl.segmentedControlStyle = UISegmentedControlStylePlain;
?
UISegmentedControlStyleBordered,? // large bordered 黑邊樣式
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBordered;
?
UISegmentedControlStyleBar,?????? // small button/nav bar style. Tintable 條狀樣式
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
?
??? UISegmentedControlStyleBezeled,?? // DEPRECATED. Do not use this style. 這個類型不要使用,用了會報錯喔。
};
?
2.tintColor 漸變顏色
Default tintColor is nil. Only used if style is UISegmentedControlStyleBar
默認(rèn)空,只有使用UISegmentedControlStyleBar,才能設(shè)置漸變顏色。
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;
segmentedControl.tintColor = [UIColor redColor];
效果:
?
3.momentary 設(shè)置在點擊后是否恢復(fù)原樣
默認(rèn)為NO
segmentedControl.momentary = No;
點擊之后效果:
?
segmentedControl.momentary = YES;
點擊之后效果:
?
?
4. numberOfSegments(只讀)
獲取總選項數(shù)segmentedControl.numberOfSegments
?
5. selectedSegmentIndex
用來設(shè)置選中項或者返回選中項。
segmentedControl.selectedSegmentIndex = 2;//設(shè)置默認(rèn)選擇項索引
segmentedControl.selectedSegmentIndex // 獲取選中項
6.- (void)setTitle:(NSString *)title forSegmentAtIndex:(NSUInteger)segment;
[segmentedControl setTitle:@"two" forSegmentAtIndex:1];//設(shè)置指定索引的題目
效果:
?
7. - (void)setImage:(UIImage *)image forSegmentAtIndex:(NSUInteger)segment;??????
[segmentedControl setImage:[UIImage imageNamed:@"lan.png"] forSegmentAtIndex:3];//設(shè)置指定索引的圖片
?
8.-(void)insertSegmentWithTitle:(NSString*)title atIndex:(NSUInteger)segment animated:(BOOL)animated;
[segmentedControl insertSegmentWithTitle:@"add" atIndex:3 animated:NO];//在指定索引插入一個選項并設(shè)置題目
效果:
?
9.-(void)insertSegmentWithImage:(UIImage *)image? atIndex:(NSUInteger)segment animated:(BOOL)animated;
[segmentedControl insertSegmentWithImage:[UIImage imageNamed:@"mei.png"] atIndex:2 animated:NO];//在指定索引插入一個選項并設(shè)置圖片
?
10.- (void)removeSegmentAtIndex:(NSUInteger)segment animated:(BOOL)animated;
[segmentedControl removeSegmentAtIndex:0 animated:NO];//移除指定索引的選項
效果:
?
11. - (void)removeAllSegments;
?//移除所有選項
[segmentedControl removeAllSegments];
?
12. - (void)setWidth:(CGFloat)width forSegmentAtIndex:(NSUInteger)segment;???????? // set to 0.0 width to autosize. default is 0.0
選項卡的寬度默認(rèn)為0,此方法能夠設(shè)置選項卡寬度。
[segmentedControl setWidth:70.0 forSegmentAtIndex:2];//設(shè)置指定索引選項的寬度
效果:
?
13. - (void)setContentOffset:(CGSize)offset forSegmentAtIndex:(NSUInteger)segment; // adjust offset of image or text inside the segment. default is (0,0)
[segmentedControl setContentOffset:CGSizeMake(10,0) forSegmentAtIndex:1];
設(shè)置選項卡內(nèi)部文字或者圖片與默認(rèn)位置的偏移量,默認(rèn)位置在選項卡的中心。
效果:
?
14. - (void)setEnabled:(BOOL)enabled forSegmentAtIndex:(NSUInteger)segment; ? ? ??
[segmentedControl setEnabled:NO forSegmentAtIndex:4];//設(shè)置指定索引選項不可選
?
15.增加事件響應(yīng)機(jī)制
監(jiān)聽的是這個事件:UIControlEventValueChanged,值改變事件
[segmentedControl addTarget:self? action:@selector(itemClick)?? forControlEvents:UIControlEventValueChanged];
?
轉(zhuǎn)載于:https://www.cnblogs.com/feife/p/4630338.html
總結(jié)
以上是生活随笔為你收集整理的简述UISegment的属性和用法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: docker 打包python 应用
- 下一篇: java 进销存系统_基于SSM框架搭建