iOS

UISegmentControl的基本用法

2016-04-20  本文已影响3183人  阿黎转呀转
NSArray *segmentedArray = [[NSArrayalloc]initWithObjects:@"1",@"2",@"3",@"4",nil];   
//初始化UISegmentedControl   
UISegmentedControl *segmentedControl = [[UISegmentedControlalloc]initWithItems:segmentedArray];   
segmentedControl.frame = CGRectMake(20.0,……)  
// 设置默认选择项索引   
segmentedControl.selectedSegmentIndex = 2;  
segmentedControl.tintColor = [UIColor redColor];   
// 有基本四种样式  
segmentedControl.segmentedControlStyle = UISegmentedControlStylePlain;  
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBordered;  
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;  
segmentedControl.segmentedControlStyle = UISegmentedControlStyleBezeled;  
  
  
// 设置在点击后是否恢复原样      
 segmentedControl.momentary = YES;  
 [segmentedControl setTitle:@"two" forSegmentAtIndex:1];//设置指定索引的题目   
 [segmentedControl setImage:[UIImage imageNamed:@"btn_jyy.png"] forSegmentAtIndex:3];//设置指定索引的图片   
// 在指定索引插入一个选项并设置图片  
 [segmentedControl insertSegmentWithImage:[UIImage imageNamed:@"mei.png"] atIndex:2 animated:NO];  
// 在指定索引插入一个选项并设置题目   
 [segmentedControl insertSegmentWithTitle:@"insert" atIndex:3 animated:NO];  
  
// 移除指定索引的选项   
 [segmentedControl removeSegmentAtIndex:0 animated:NO];  
// 设置指定索引选项的宽度   
 [segmentedControl setWidth:70.0 forSegmentAtIndex:2];  
// 设置选项中图片等的左上角的位置   
 [segmentedControl setContentOffset:CGSizeMake(10.0,10.0) forSegmentAtIndex:4];  
  
 //获取指定索引选项的图片imageForSegmentAtIndex:   
 UIImageView *imageForSegmentAtIndex = [[UIImageViewalloc]initWithImage:[segmentedControl imageForSegmentAtIndex:1]];   
 imageForSegmentAtIndex.frame = CGRectMake(60.0, 120.0, 30.0, 30.0);  ;  
  
 //获取指定索引选项的标题titleForSegmentAtIndex   
 UILabel *titleForSegmentAtIndex = [[UILabel alloc]initWithFrame:CGRectMake(100.0, 160.0, 30.0, 30.0)];   
 titleForSegmentAtIndex.text = [segmentedControl titleForSegmentAtIndex:0];   
  
 //获取总选项数segmentedControl.numberOfSegments   
 UILabel *numberOfSegments = [[UILabel alloc]initWithFrame:CGRectMake(140.0, 170.0, 30.0, 30.0)];   
 numberOfSegments.text = [NSString stringWithFormat:@"%d",segmentedControl.numberOfSegments];  
  
 //获取指定索引选项的宽度widthForSegmentAtIndex:   
 UILabel *widthForSegmentAtIndex = [[UILabel alloc]initWithFrame:CGRectMake(180.0, 210.0, 70.0, 30.0)];   
 widthForSegmentAtIndex.text = [NSString stringWithFormat:@"%f",[segmentedControl widthForSegmentAtIndex:2]];   
   
// [segmentedControl setEnabled:NO forSegmentAtIndex:4];//设置指定索引选项不可选   
// BOOL enableFlag = [segmentedControl isEnabledForSegmentAtIndex:4];//判断指定索引选项是否可选   
   [mySegmentedControladdTarget:selfaction:@selector(didClicksegmentedControlAction:)forControlEvents:UIControlEventValueChanged];    
  
oid)didClicksegmentedControlAction:(UISegmentedControl *)Seg{  
 NSInteger Index = Seg.selectedSegmentIndex;  
 NSLog(@"Index %i", Index);  
 switch (Index) {  
     case 0:  
         [self selectmyView1];  
         break;  
     case 1:  
         [self selectmyView2];  
         break;  
     case 2:  
         [self selectmyView3];  
         break;  
     case 3:  
         [self selectmyView4];  
         break;  
…………………………….  
     default:  
         break;  
 } 

原文出处:http://blog.csdn.net/hmt20130412/article/details/38390493

上一篇下一篇

猜你喜欢

热点阅读