UISegmentedControl基本使用方法

UISegmentedControl分段控件基本使用方法

创建

UISegmentedControl* mySegmentedControl = [[UISegmentedControl alloc]initWithItems:nil];

它不需要指定大小,高度默认为44,不能写0

设置宽度:

[mySegmentedControl setWidth:100 forSegmentAtIndex:0];//设置Item的宽度

设置样式

mySegmentedControl.segmentedControlStyle = UISegmentedControlStyleBar;

风格可以视使用的场合而定,有三种风格选择,如下:

UISegmentedControlStylePlain, // large plain 有灰边的大白按钮,适合偏好设置单元

UISegmentedControlStyleBordered, // large bordered 黑边的大白按钮,适用于表格单元

UISegmentedControlStyleBar, // small button/nav bar style. tintable 小按钮,适合导航栏

UISegmentedControlStyleBezeled, // large bezeled style. tintable


设置片段图片

添加一个含有图像的片段,用inserSegmentWithImage

[mySegmentedControl insertSegmentWithImage:[UIImage imageNamed:@"pic"] atIndex:3 animated:YES];

删除片段
[ mySegmentedControl removeSegmentAtIndex:0 animated:YES];//删除一个片段

设置片段标题
[ mySegmentedControl setTitle:@"ZERO" forSegmentAtIndex:0];//设置标题
NSString* myTitle = [mySegmentedControl titleForSegmentAtIndex:1];//读取标题

添加到导航栏
self.navigationItem.titleView = mySegmentedControl;

示例:

  NSArray *segmentedArray = [[NSArrayalloc]initWithObjects:@"学历报表",@"职务报表",nil];

    UISegmentedControl_segmentCtrl = [[UISegmentedContro alloc]initWithItems:segmentedArray];

    //用于初始化数组

   NSArray *segmentedArray = [[NSArrayalloc]initWithObjects:@"学历报表",@"职务报表",nil];

   _segmentCtrl = [[UISegmentedControlalloc]initWithItems:segmentedArray];

   _segmentCtrl.frame =CGRectMake(5,0,kMainScreenWidth-10,34);

   //设置被选中颜色

    _segmentCtrl.tintColor =TABBAR_BARTINT_COLOR;

    

    NSMutableDictionary *barTitleTextAttributes = [NSMutableDictionarydictionary];

    [barTitleTextAttributessetObject:CONTENT_FONTforKey:NSFontAttributeName];

    [barTitleTextAttributessetObject:CONTENT_COLORforKey:NSForegroundColorAttributeName];

   //设置被选择和不选择中时字体与颜色

    [_segmentCtrlsetTitleTextAttributes:barTitleTextAttributesforState:UIControlStateNormal];

    [_segmentCtrlsetTitleTextAttributes:barTitleTextAttribute forState:UIControlStateSelected];

    //设置点击处理函数

    [_segmentCtrladdTarget:selfaction:@selector(controlPressed:)forControlEvents:UIControlEventValueChanged];

    //设置默认页面

    _segmentCtrl.selectedSegmentIndex =0;


-(void)controlPressed:(id)sender

{

    UISegmentedControl *control = (UISegmentedControl *)sender;

   if (control ==babySegmentCtrl) {

        NSInteger x = control.selectedSegmentIndex;

        //NSLog(@"select segment index is %d", x);

       switch (x) {

           case0:{

               break;

            } 

           default:

               break;

        }

    }

}



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值