UISlider基本使用
UISlider是一个很常用的UI控件,调节屏幕亮度或者调节音量大小等很多地方都可以用到,而且使用方便,下面我来介绍一下UISlider的基本使用。
首先介绍一下基本属性和常用方法:
//设置当前slider的值,默认为0.0
@property(nonatomic) float value;
//设置slider的最小值
@property(nonatomic) float minimumValue;
//设置slider的最大值
@property(nonatomic) float maximumValue;
//设置滑块左边的图片
@property(nullable, nonatomic,strong) UIImage *minimumValueImage;
//设置滑块右边的图片
@property(nullable, nonatomic,strong) UIImage *maximumValueImage;
//设置已完成部分轨道颜色
@property(nullable, nonatomic,strong) UIColor *minimumTrackTintColor;
//设置未完成部分轨道颜色
@property(nullable, nonatomic,strong) UIColor *maximumTrackTintColor;
//设置滑块颜色
@property(nullable, nonatomic,strong) UIColor *thumbTintColor;
//设置slider的值
- (void)setValue:(float)value animated:(BOOL)animated;
//设置不同状态下滑块的图片
- (void)setThumbImage:(nullable UIImage *)image forState:(UIControlState)state;
//设置不同状态下滑动条左侧的图片
- (void)setMinimumTrackImage:(nullable UIImage *)image forState:(UIControlState)state;
//设置不同状态下滑动条右侧的图片
- (void)setMaximumTrackImage:(nullable UIImage *)image forState:(UIControlState)state;
下面来看一个完整示例,通过滑动条来调整图片的透明度
#import "ViewController.h" @interface ViewController ()
@property(nonatomic,strong)UISlider *slider;
@property(nonatomic,strong)UIImageView *imageView;
@end @implementation ViewController - (void)viewDidLoad {
[super viewDidLoad];
[self.view addSubview:self.imageView];
[self.view addSubview:self.slider];
} //懒加载
- (UISlider *)slider{
if (_slider == nil) {
self.slider = [[UISlider alloc]initWithFrame:CGRectMake(, , self.view.frame.size.width - , )];
//设置当前slider的值,默认是0
_slider.value = 0.5;
//已完成线条颜色
_slider.minimumTrackTintColor = [UIColor greenColor];
//未完成部分线条颜色
_slider.maximumTrackTintColor = [UIColor blackColor];
//滑块颜色
_slider.thumbTintColor = [UIColor grayColor];
//添加事件
[_slider addTarget:self action:@selector(valueChanged) forControlEvents:UIControlEventValueChanged]; }
return _slider;
} //懒加载
- (UIImageView *)imageView{
if (_imageView == nil) {
self.imageView = [[UIImageView alloc]initWithFrame:CGRectMake(, , self.view.frame.size.width, )];
_imageView.contentMode = UIViewContentModeScaleAspectFit;
_imageView.image = [UIImage imageNamed:@""];
_imageView.layer.masksToBounds = YES;
_imageView.layer.borderWidth = ;
_imageView.alpha = 0.5;
} return _imageView;
} - (void)valueChanged{
//滑动中随时改变透明度
[self.imageView setAlpha:self.slider.value];
} @end
UISlider基本使用的更多相关文章
- UI控件(UISlider)
@implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; UISlider* slider = [[UISli ...
- UI第七节——UISlider详解
- (void)viewDidLoad { [super viewDidLoad]; // 实例化UISlider,高度对外观没有影响 UISlider *slider = [[UISlider al ...
- iOS UISlider的使用
UISlider是一个方便的控件,让用户能够以可视化的方式设置指定范围内的值. 和按钮一样,滑块也能响应事件,还可像文本框一样被读取.如果希望用户对滑块的调整立刻影响应用程序,则需要让他触发操作. 下 ...
- UISlider相关
设置slider当前位置的图像 [slider setThumbImage:[UIImage imageNamed:@"dd.png"] forState:UIControlSta ...
- UISlider
UISlider是iOS中的滑块控件 通常⽤于控制视频播放进度,控制⾳量等. 它继承于UIControl,滑块提供了⼀系列连续的值,滑块停 在不同的位置,获取到滑块上的值也不同. minimumV ...
- UIProgressView和UISlider
UIProgressView和UISlider两个控件长的很像,区别在于UISlider有一个可以改变进度的滑块.虽然样子差不多,提供的属性的功能也差不多,但是属性的名字差别比较大. UIProgre ...
- UIImageView、UISlider、UISwitch、UIStepper、UISegmentControl
UIImageView——图像视图 作用:专门用来显示图片的控件 . 设置图像 [self.imageView setImage:[UIImage imageNamed:@"abc.png& ...
- UISlider显示进度(并且实现图片缩放)
图片展示效果如下: 其他没什么好说的,直接上代码: RootView.h: #import <UIKit/UIKit.h> @interface RootView : UIView @pr ...
- 音乐播放器 AVAudioPlayer、定时器、UISlider
#import <UIKit/UIKit.h> #import <AVFoundation/AVFoundation.h> @interface ViewController ...
- UISlider控件属性及方法(转)
初始化一个Slider UISlider *slider = [[UISlider alloc]initWithFrame:CGRectMake(0, 400,320 , 20)]; 访问UI ...
随机推荐
- matlab-线性回归
1.调用函数regress(Y,X,alpha),plpha是置信度,如果直接用regress(Y,X)则默认置信度为0.05,Y是一个 的列向量,X是一个 的矩阵,其中第一列是全1向量. 2.函数返 ...
- LeetCode 987. Vertical Order Traversal of a Binary Tree
原题链接在这里:https://leetcode.com/problems/vertical-order-traversal-of-a-binary-tree/ 题目: Given a binary ...
- zzulioj - 2618: ACM-ICPC亚洲区域赛ZZULI站
题目链接; http://acm.zzuli.edu.cn/problem.php?id=2618 题目描述 玩了这么多游戏,V决定还是去做几道ACM题练练手,于是翻到了一道201X年ACM/ICPC ...
- es6 中的模块导入与nodejs 中模块的导入的异同!
我们知道es6 的模块导入导出是通过import 和 export 来实现,而nodejs的模块导入导出是通过require 和module.exports 来实现,那么它们有什么异同吗? 请看如下: ...
- jsonp原理,跨域请求头处理
一.jsonp(解决跨域)思路介绍: 因浏览器的同源策略不会拦截link标签内的src请求,所以利用这一点,我们把后端开放的接口路径放在src内, 其在发送请求后会自动接收返回的东西,所以我们可以给要 ...
- 在eclipse中新建java问题报错:The type XXX cannot be resolved. It is indirectly referenced from required .class files
在Eclipse中遇到The type XXX cannot be resolved. It is indirectly referenced from required .class files错误 ...
- 第08组 Beta冲刺(5/5)
队名:955 组长博客:点这里! 作业博客:点这里! 组员情况 组员1(组长):庄锡荣 过去两天完成了哪些任务 文字/口头描述 部署新服务器 展示GitHub当日代码/文档签入记录 接下来的计划 准备 ...
- Android Studio 之 ROM【1】, Entity,Dao,Database
Android Studio 之 ROM, Entity,DAO,DataBase 1.Entity 实体类 package com.example.roombasic; import android ...
- SCIE和SCI
SCI和SCIE(SCI Expanded)分别是科学引文索引及科学引文索引扩展版(即网络版),主要是收录自然科学.工程技术领域最具影响力的重要期刊,包括2000多种外围刊. SCIE和SCI一样吗? ...
- 二分法构造AVL树
public class ConvertSortedArrayToBinarySearchTree { public static TreeNode sortedArrayToBST(int[] nu ...