UISegmentedControl

UISegmentedControl是iOS中常⽤的分段控件。
 
每个segment都能被点击,它相当于继承了若⼲个button。分段 控件提供⼀栏按钮(有时称为按钮栏),但⼀个时刻只能激活其 中⼀个按钮
 
分段控件会导致⽤户在屏幕上看到的内容发⽣变化。它们常⽤被 ⽤在不同类别的信息之间选择,或者在切换不同的视图。
 
initWithItems: //UISegmentedControl独有的初始化⽅法,⽤来创建多个分段
selectedSegmentAtIndex //指定被选中的分段
tintColor //segmentedControl条的颜⾊(含每个segment的颜⾊)
addTarget:action:forControlEvents: //给slider添加事件
    注意:controlEvent为UIControlEventValueChanged
    原因:分段控件本质上通过数据管理分段,所以使⽤valueChanged属性来触发事件,即数组下标变化
 
基本样式:
1.UISegmentedControlStylePlain
2.UISegmentedControlStyleBordered
3.UISegmentedControlStyleBar
4.UISegmentedControlStyleBezeled
 
//特有初始化方法,用来创建多个分段
    NSMutableArray *arr = [[NSMutableArray alloc] initWithObjects:@"one",@"two",@"three",@"1",
                           nil];
    UISegmentedControl *segmented = [[UISegmentedControl alloc] initWithItems:arr];
    segmented.frame = CGRectMake(100, 50, 200, 30);
 
momentaty //设置在点击后是否恢复原样
setTitle:forSegmentAtIndex: //为指定下标的分段设置title
例:[segmentedControl setTitle:@"two" forSegmentAtIndex:1];
 
setImage:forSegmentAtIndex: //为指定下标的分段设置图⽚
    例:[segmentedControl setImage:[UIImage imageNamed:@"btn_jyy.png"]forSegmentAtIndex:3];
    forSegmentAtIndex: //设定指定索引不是否可点
    isEnabledForSegmentAtIndex: //判断指定索引是否可点,返 回值为BOOL类型
 
添加事件:
//为UISegmentedControl添加事件
[seg addTarget:self action:@selector(segmentedControlAction:) forControlEvents:UIControlEventValueChanged];
 
//UISegmentedControl事件的响应(通常我们和swich...case分⽀语句组合使⽤)
- (void)segmentedControlAction:(UISegmentedControl *)seg {
    switch (seg.selectedSegmentIndex) {
        case 0:
            [[self.myView.subviews firstObject] removeFromSuperview];
            [self.myView addSubview:self.label];
            break;
        case 1:
            [[self.myView.subviews firstObject] removeFromSuperview];
            [self.myView addSubview:self.textField];
            break;
        default:
            break;
    }
}
 
 
 

posted on 2016-02-23 18:04  Walking_Jin  阅读(128)  评论(0编辑  收藏  举报

导航