欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

iOS开发(10)UISegmentedControl

发布时间:2024/9/30 35 豆豆
生活随笔 收集整理的这篇文章主要介绍了 iOS开发(10)UISegmentedControl 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

   UISegmentedControl是一个多按钮控制器,相当于好几个button连在一起。




NSArray *segmentedArray = [[NSArrayalloc]initWithObjects:@"1",@"2",@"three",@"4",nil];

    //初始化UISegmentedControl

   UISegmentedControl *segmentedControl = [[UISegmentedControlalloc]initWithItems:segmentedArray];

segmentedControl.frame =CGRectMake(10.0,10.0, 300.0,50.0);


// 获取索引

    [segmentedControlselectedSegmentIndex];

    //设置默认选择项索引

    segmentedControl.selectedSegmentIndex =3;

    segmentedControl.tintColor = [UIColorredColor];

    //设置样式

    segmentedControl.segmentedControlStyle =UISegmentedControlStyleBar;

    //设置在点击后是否恢复原样

    segmentedControl.momentary =YES;

    //设置指定索引选项不可选

    [segmentedControlsetEnabled:NOforSegmentAtIndex:4];

    //判断指定索引选项是否可选

   BOOL enableFlag = [segmentedControl isEnabledForSegmentAtIndex:3];

   NSLog(@"%d",enableFlag);

    //添加响应事件

    [segmentedControl addTarget:selfaction:@selector(segmentSelect:)forControlEvents:UIControlEventValueChanged];


以上是segmentedControl常用的,下面介绍一些用的比较少的

//设置指定索引的题目

    [segmentedControlsetTitle:@"two"forSegmentAtIndex:1];

    //设置指定索引的图片

    [segmentedControl setImage:[UIImageimageNamed:@"rating2.png"]forSegmentAtIndex:3];

    //在指定索引插入一个选项并设置图片

    [segmentedControl insertSegmentWithImage:[UIImageimageNamed:@"rating1"]atIndex:2animated:NO];

    //在指定索引插入一个选项并设置题目

    [segmentedControl insertSegmentWithTitle:@"insert"atIndex:3animated:NO];

    //移除指定索引的选项

    [segmentedControl removeSegmentAtIndex:0animated:NO];

    //设置指定索引选项的宽度

    [segmentedControlsetWidth:80.0forSegmentAtIndex:2];

    //设置选项中图片等的左上角的位置

    [segmentedControl setContentOffset:CGSizeMake(10.0,10.0)forSegmentAtIndex:1];

    //获取指定索引选项的图片imageForSegmentAtIndex

   UIImageView *imageForSegmentAtIndex = [[UIImageViewalloc]initWithImage:[segmentedControlimageForSegmentAtIndex:1]];

    imageForSegmentAtIndex.frame =CGRectMake(60.0,100.0, 30.0,30.0);

    

    //获取指定索引选项的标题titleForSegmentAtIndex

   UILabel *titleForSegmentAtIndex = [[UILabelalloc]initWithFrame:CGRectMake(100.0,100.0, 30.0,30.0)];

    titleForSegmentAtIndex.text = [segmentedControltitleForSegmentAtIndex:0];

    

    //获取总选项数segmentedControl.numberOfSegments

   UILabel *numberOfSegments = [[UILabelalloc]initWithFrame:CGRectMake(140.0,100.0, 30.0,30.0)];

    numberOfSegments.text = [NSStringstringWithFormat:@"%d",segmentedControl.numberOfSegments];

    

    //获取指定索引选项的宽度widthForSegmentAtIndex

   UILabel *widthForSegmentAtIndex = [[UILabelalloc]initWithFrame:CGRectMake(180.0,100.0, 70.0,30.0)];

    widthForSegmentAtIndex.text = [NSStringstringWithFormat:@"%.1f",[segmentedControlwidthForSegmentAtIndex:2]];



- (void)segmentSelect:(UISegmentedControl *)sender

{

    NSLog(@"index %i",sender.selectedSegmentIndex);

//可以通过判断UISegmentedControl的按钮index来实现自己的逻辑

}



总结

以上是生活随笔为你收集整理的iOS开发(10)UISegmentedControl的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。