UIKit中的选择开关UISegmentedControl与UISwitch使用

在IOS开发中UISwitch用的比较多,通常用在用户喜好设置上,分段开关通常是切换不同的View,下面都来看看。

1. UISegmentedControl
1.1 介绍
  1. 每个segment都能被点击,相当于集成了多个button
  2. 通常我们会点击不同的segment来切换不同的view
1.2 使用
- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view.
    UISegmentedControl* seg = [[UISegmentedControl alloc]initWithItems:@[@"一",@"二",@"三",@"四",@"五"]];
    seg.frame = CGRectMake(10, 50, 200, 30);
    //短暂性的点击
    seg.momentary = YES;
    //按钮大小与内容自适应
    seg.apportionsSegmentWidthsByContent = YES;
    //指定位置插入一个按钮
    [seg insertSegmentWithTitle:@"插入的按钮" atIndex:1 animated:YES];
    // insertSegmentWithImage:(nullable UIImage *) atIndex:(NSUInteger) animated:(BOOL)
    //移除某一个按钮
    [seg removeSegmentAtIndex:1 animated:YES];
    //移除所有按钮
    [seg removeAllSegments];
    //重新按钮设置标题
    [seg setTitle:@"设置的标题" forSegmentAtIndex:1];
    //设置按钮的宽度
    [seg setWidth:10 forSegmentAtIndex:1];
    //设置按钮内容的偏移量
    [seg setContentOffset:CGSizeMake(10, 10) forSegmentAtIndex:1];
    //默认选中的按钮
    seg.selectedSegmentIndex = 1;
    //设置风格颜色
    [seg setTintColor:[UIColor redColor]];
    [self.view addSubview:seg];
2. UISwitch
2.1 介绍

这个控件通常是在个人设置等用户喜好设置时出现。由于在iOS系统内置了UISwithch控件的size,所以通过代码调整UISwithch的大小是无效的。
默认大小 51.0f 31.0f

2.2 使用

UISwitch使用比较简单,由于在需求中,定制化严重,因此UISwitch使用的场景比较固定,

/**
 UISwitch
*/
    UISwitch *uiswitch = [[UISwitch alloc]initWithFrame:CGRectMake(100, 100, 30, 30)];
    [uiswitch addTarget:self action:@selector(click:) forControlEvents:UIControlEventValueChanged];
    //设置打开时的颜色
    uiswitch.onTintColor = [UIColor orangeColor];
    //设置关闭时的颜色
    uiswitch.tintColor = [UIColor whiteColor];
    //设置按钮的颜色
    uiswitch.thumbTintColor = [UIColor blueColor];
    
    [self.view addSubview:uiswitch];
}

-(void)changeBG:(UISlider*)slider
{
    NSLog(@"%f",slider.value);
}

-(void)click:(UISwitch*)us
{
    NSLog(@"打开");
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值