IOS开发之UISlider以及UIswitch

今天项目中要用到音量的控制,忽然想起来用UIslider做起来应该会更好点,于是就复习了一下:

  CGRect frame = CGRectMake(10, 50, 200, 0);
    //slider高度被忽略,所以设置为0
    slider=[[UISlider alloc] initWithFrame:frame];
    //slider系统默认取值范围是0.0--1.0之间,可以通过mininumValue和maxinumValue两个属性设置
    slider.minimumValue=0.0;
    slider.maximumValue = 100.0;
    //设置滑块左边值颜色为绿色。系统默认为蓝色
    slider.minimumTrackTintColor = [UIColorgreenColor];
    //设置滑块右边值为红色,系统默认为白色
    slider.maximumTrackTintColor = [UIColorredColor];
    //给slider是指默认值30
    slider.value = 30;
    //continuous属性,是指滑块值在拖地触发滑块值变动
    slider.continuous = YES;

//添加一个UISlider的滑动时间。在这个事件中读取UISLider的Value值即可知UIslider的变化。

    [slideraddTarget:selfaction:@selector(sliderValueChanged:) forControlEvents:UIControlEventValueChanged];
    [self.view addSubview:slider];

设置UISlider左右两端的图片:

self.volumeSlider.minimumValueImage = [UIImage imageNamed:@"volume-mute.png"];

    self.volumeSlider.maximumValueImage = [UIImage imageNamed:@"volume-up.png"];

设置跟踪Uislider变化的图片:

  [self.volumeSlider setMinimumTrackImage:[UIImage imageNamed:@"volume-mute.png"] forState:UIControlStateNormal];

  [self.volumeSlider setMaximumTrackImage:[UIImage imageNamed:@"volume-up.png"] forState:UIControlStateNormal];


补充
这是拖拽空间实现的
这是输出口和事件
@property (weak, nonatomic) IBOutletUILabel *sliderLabel;
- (IBAction)sliderChanged:(id)sender;
这是事件实现
 
- (IBAction)sliderChanged:(id)sender {
 
    //首先将sender装换承UISlider,作用是让代码可读性变强,
 
    //并避免每次使用sender都对他进行其它类型转换。
 
    UISlider *slider = (UISlider *)sender;
 
    //接收滑块的值,将其加0.5,以便四舍五入为整型值。
 
    int progresAsInt = (int)(slider.value +0.5f);
 
    //必须转换为string  时间上一个项目里面有
 
    self.sliderLabel.text =[[NSString alloc] initWithFormat:@"%d",progresAsInt];
 
}
然后就ok
 
 
补充另外一点
//    两端添加图片
//    滑块可以在任何一段显示图像。添加图像后会导致滑动条缩短,所以记得要记得在创建的时候增加滑块的宽度来适应图像。
//    [ mySlider setMininumTrackImage: [ UIImage applicationImageNamed:@"min.png" ] forState: UIControlStateNormal ];
//    [ mySlider setMaxinumTrackImage: [ UIImage applicationImageNamed:@"max.png" ] forState: UIControlStateNormal ];
//    你可以根据滑块的各种不同状态显示不同的图像。下面是可用状态:
//    UIControlStateNormal
//    UIControlStateHighlighted
//    UIControlStateDisabled
//    UIControlStateDisabled
//    UIControlStateSelected
    //continuous属性,是指滑块值在拖地触发滑块值变动
    mySlider.continuous = YES;
    //滑块值改变时收到通知
    [mySlider addTarget:selfaction:@selector(sliderValueChanged:) forControlEvents:UIControlEventValueChanged];
    [self.view addSubview:mySlider];
    //[self.navigationItem.titleView addSubview:myslider ];//添加到导航栏
}

//Switch控件,
    CGRect switchFrame = CGRectMake(100, 200, 0, 0);
    //初始化
    switchTest = [[UISwitch alloc] initWithFrame:switchFrame];
    //设置switch初始状态为ON
    switchTest.on = YES;
    //添加一个触发事件,当点击时候,触发这个事件
    [switchTestaddTarget:selfaction:@selector(switchValueChanged:) forControlEvents:UIControlEventValueChanged];witch控件,

    CGRect switchFrame = CGRectMake(100, 200, 0, 0);
    //初始化
    switchTest = [[UISwitch alloc] initWithFrame:switchFrame];
    //设置switch初始状态为ON
    switchTest.on = YES;
    //添加一个触发事件,当点击时候,触发这个事件
    [switchTestaddTarget:selfaction:@selector(switchValueChanged:) forControlEvents:UIControlEventValueChanged];

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值