zoukankan      html  css  js  c++  java
  • iOS开发-UISlider改变图片透明度

    拖动条是通过滑块的位置来标识数值,而且拖动条允许用户拖动滑块来改变值。因此,拖动条通常用于对系统的某种数值进行调节,如调节亮度,透明度,音量等。

    一、属性介绍

    1. @property(nonatomic) float value; //设置当前slider的值,默认是0.
    2. @property(nonatomic,getter=isContinuous) BOOL continuous; //滑动时是否连续触发事件,默认为YES;
    3. @property(nullable, nonatomic,strong) UIColor *minimumTrackTintColor//滑动条完成部分的轨道颜色
    4. @property(nullable, nonatomic,strong) UIColor *maximumTrackTintColor //滑动条未完成部分的轨道颜色
    5. @property(nullable, nonatomic,strong) UIColor *thumbTintColor//滑块的颜色

    由于UISlider继承于UIControl,所以我们可以为它的Value Changed事件绑定 UIControlEventValueChanged事件处理方法。

    1. [self.mySlider addTarget:self action:@selector(change) forControlEvents:UIControlEventValueChanged];

    二、示例代码

    • 创建所需的控件属性
    1. @property (strong, nonatomic) UISlider *mySlider;
    2. @property (strong, nonatomic) UIImageView *myImageView;
    • 使用懒加载方式初始化所需控件
    1. - (UISlider *)mySlider{
    2. if (!_mySlider) {
    3. _mySlider = [[UISlider alloc] initWithFrame:CGRectMake(0, 300, 375, 10)];
    4. _mySlider.value = 0.5;//设置当前滑块处于滑动条中间
    5. _mySlider.continuous = NO;//不连续触发事件
    6. _mySlider.minimumTrackTintColor = [UIColor redColor];//设置完成部分的轨道颜色为红色
    7. _mySlider.maximumTrackTintColor = [UIColor blueColor];//设置未完成部分的轨道颜色为蓝色
    8. _mySlider.thumbTintColor = [UIColor grayColor];//设置滑块颜色为灰色
    9. [_mySlider addTarget:self action:@selector(change) forControlEvents:UIControlEventValueChanged];//绑定ValueChange方法
    10. [self.view addSubview:_mySlider];
    11. }
    12. return _mySlider;
    13. }
    14. - (UIImageView *)myImageView{
    15. if (!_myImageView) {
    16. _myImageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 375, 300)];
    17. _myImageView.image = [UIImage imageNamed:@"1"];
    18. _myImageView.alpha = .5;//设置图片刚开始透明度为0.5与滑块对应的value保持一致
    19. [self.view addSubview:_myImageView];
    20. }
    21. return _myImageView;
    22. }
    23. - (void)viewDidLoad {
    24. [super viewDidLoad];
    25. // Do any additional setup after loading the view, typically from a nib.
    26. [self myImageView];
    27. [self mySlider];
    28. }
    • 在UISlider的Value Changed事件绑定的方法中修改图片的透明度
    1. - (void)change{
    2. [self.myImageView setAlpha:self.mySlider.value];
    3. }

    源码下载

    HCUISlider

  • 相关阅读:
    手动访问和传参
    子路由
    matlab 不同尺度的矩阵存储
    贝叶斯决策
    vim的使用
    linux另一种安装方式
    Linux中profile、bashrc、bash_profile之间的区别和联系
    emacs编辑器的使用
    关于鼠标不敏感导致自以为ubuntu很怪的问题
    各种可以远程
  • 原文地址:https://www.cnblogs.com/wanghuaijun/p/5326117.html
Copyright © 2011-2022 走看看