ios基础篇(七)——UISwich、UISlider、UIProgressView的用法总结
一、UISlider
UIslider滑块控件在IOS开发中会常用到,可用于调节音量,字体大小等UI方面的交互;UISlider实例提供一个控件,让用户通过左右拖动一个滑块(可称其为“缩略图”)来选择一个值。默认情况下,滑块的最小值为0.0,最大值为1.0。当然可以在属性面板中通过设置minimumValue和maximumValue来进行定制这两个值。如果要为控件两端设置样式,可以添加一对相关图像(minimumValueImage和maximumValueImage属性)来加强该设置,也可在代码中通过setMimimumTrackImage: forState: 和setMaximumTrackImage: forState: 方法来添加设置两端图片。
UISwitch对象提供一个简单的开/关切换,允许用户选择一个布尔值。
常见属性:
1、value:
这个值是介于滑块的最大值和最小值之间的,如果没有设置边界值,默认为0-1;
2、minimumValue:
设置滑块最小边界值(默认为0)
3、maximumValue:
设置滑块最大边界值(默认为1)
4、minimumValueImage:
设置滑块最左端显示的图片
5、maximumValueImage
设置滑块最右端显示的图片
6、continuous(BOOL)
设置滑块值是否连续变化(默认为YES)
7、minimumTrackTintColor
设置滑块左边(小于部分)线条的颜色
8、maximumTrackTintColor:
设置滑块右边(大于部分)线条的颜色
9、thumbTintColor
设置滑块颜色(影响已划过一端的颜色),注意这个属性:如果你没有设置滑块的图片,那个这个属性将只会改变已划过一段线条的颜色,不会改变滑块的颜色,如果你设置了滑块的图片,又设置了这个属性,那么滑块的图片将不显示,滑块的颜色会改变。
常用方法:
手动设置滑块的值:
- (void)setValue:(float)value animated:(BOOL)animated;
设置滑块的图片:
- (void)setThumbImage:(UIImage *)image forState:(UIControlState)state;
设置滑块划过部分的线条图案
- (void)setMinimumTrackImage:(UIImage *)image forState:(UIControlState)state;
设置滑块未划过部分的线条图案
- (void)setMaximumTrackImage:(UIImage *)image forState:(UIControlState)state;
对应的几个get方法
- (UIImage *)thumbImageForState:(UIControlState)state;
- (UIImage *)minimumTrackImageForState:(UIControlState)state;
- (UIImage *)maximumTrackImageForState:(UIControlState)state;
对应的设置当前状态的响应属性的方法
@property(nonatomic,readonly) UIImage* currentThumbImage;
@property(nonatomic,readonly) UIImage* currentMinimumTrackImage;
@property(nonatomic,readonly) UIImage* currentMaximumTrackImage;
//初始化
mySlider = [[UISlider alloc] initWithFrame:(CGRect){,,,}];
//最小边界值
mySlider.minimumValue = ;
//最大边界值
mySlider.maximumValue = ;
//这个值是介于滑块的最大值和最小值之间的,如果没有设置边界值,默认为0-1
mySlider.value =0.5;
//设置滑块值是否连续变化(默认为YES)
mySlider.continuous= YES;
//设置滑块最左端显示的图片
mySlider.minimumValueImage = [UIImage imageNamed:@""];
//设置滑块最右端显示的图片
mySlider.maximumValueImage = [UIImage imageNamed:@""];
//设置滑块左边(小于部分)线条的颜色
mySlider.minimumTrackTintColor = [UIColor blueColor];
//设置滑块右边(大于部分)线条的颜色
mySlider.maximumTrackTintColor = [UIColor greenColor];
//设置滑块颜色(影响已划过一端的颜色)
mySlider.thumbTintColor = [UIColor grayColor];
//加入视图
[self.view addSubview:mySlider];
//添加点击事件
[mySlider addTarget:self action:@selector(sliderAction:) forControlEvents:UIControlEventValueChanged];
二、UIProgressView
//初始化
progressView = [[UIProgressView alloc] initWithProgressViewStyle:UIProgressViewStyleDefault];
//加入视图
[self.view addSubview:progressView];
//设置位置,尺寸
progressView.frame = (CGRect){,,,};
//设置进度条颜色
progressView.trackTintColor = [UIColor blueColor];
//设置进度默认值,这个相当于百分比,范围在0~1之间,不可以设置最大最小值
progressView.progress = 0.1;
//设置进度条上进度的颜色
progressView.progressTintColor = [UIColor yellowColor];
//设置进度条的背景图片
progressView.trackImage = [UIImage imageNamed:@""];
//设置进度条上进度的背景图片
progressView.progressImage = [UIImage imageNamed:@""];
//设置进度值并动画显示
[progressView setProgress:0.7 animated:YES];
如图:
三、UISwich
UISwitch 的作用是给用户提供开关,在系统的设置界面很常见,控件也很简单。
常见属性:
1、onTintColor
开关开启状态时的颜色
2、tintColor
开关风格颜色
3、thumbTintColor
开关按钮颜色
4、BOOL on
开关的状态
//初始化
swicthView = [[UISwitch alloc] initWithFrame:(CGRect){,,,}];
swicthView.on = YES;
//设置开关开启状态时的颜色
swicthView.onTintColor = [UIColor yellowColor];
//设置开关风格颜色
swicthView.tintColor = [UIColor blueColor];
//设置开关按钮颜色
swicthView.thumbTintColor = [UIColor purpleColor];
//设置开关开启状态时的图片
swicthView.onImage = [UIImage imageNamed:@"pic1"];
//设置开关关闭状态时的图片
swicthView.offImage = [UIImage imageNamed:@"pic2"];
//加入视图
[self.view addSubview:swicthView];
添加监听事件:
[swicthView addTarget:self action:@selector(swicthAction:) forControlEvents:UIControlEventValueChanged]; - (void)swicthAction:(UISwitch *)mySwicth{
UILabel *lastLabel = (UILabel*)[self.view viewWithTag:];
[lastLabel removeFromSuperview]; UISwitch *switchButton = mySwicth;
BOOL isButtonOn = [switchButton isOn]; UILabel *switchLabel = [[UILabel alloc] initWithFrame:(CGRect){,,,}];
switchLabel.font = [UIFont systemFontOfSize:];
switchLabel.tag = ;
[self.view addSubview:switchLabel];
if (isButtonOn) {
switchLabel.text = @"是";
}else
switchLabel.text = @"否";
}
ios基础篇(七)——UISwich、UISlider、UIProgressView的用法总结的更多相关文章
- ios基础篇(十六)——UIWebView的基本使用
UIWebView是内置的浏览器控件,可以用它来浏览网页.打开文档等.UIWebView是一个混合体,具体的功能控件内置的,实现一些基本的功能.UIWebView可以查看Html网页,pdf文件,do ...
- ios基础篇(三)——UIButton的详细介绍
按钮UIButton是ios开发中最常见的控件之一,下面来介绍UIButton的详细内容: 一.UIButton的定义 UIButton *button=[[UIButton buttonWithTy ...
- Lua 学习之基础篇七<Lua Module,Package介绍>
Lua 之Module介绍 包管理库提供了从 Lua 中加载模块的基础库. 只有一个导出函数直接放在全局环境中: [require]. 所有其它的部分都导出在表 package 中. require ...
- ios基础篇(二十九)—— 多线程(Thread、Cocoa operations和GCD)
一.进程与线程 1.进程 进程是指在系统中正在运行的一个应用程序,每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内: 如果我们把CPU比作一个工厂,那么进程就好比工厂的车间,一个工厂有 ...
- ios基础篇(二十七)—— Json解析
一.什么是Json JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使 ...
- ios基础篇(二十六)—— UITableViewCell的分组索引与标记
一.表视图的索引目录 首先要创建一个TableView,之前有说过,这里就不详细说了(参考前面第十四篇). 直接贴代码吧, #import "ViewController.h" @ ...
- ios基础篇(二十五)—— Animation动画(UIView、CoreAnimation)
Animation主要分为两类: 1.UIView属性动画 2.CoreAnimation动画 一.UIView属性动画 UIKit直接将动画集成到UIView类中,实现简单动画的创建过程.UIVie ...
- ios基础篇(二十四)—— 文字、图片的绘制及其自定义Button
这篇文章我们主要来拿官方的控件来研究一下,我们来仿照官方的控件,自己来实现它提供的控件: 首先来看看基本的图片与文字的绘制,很简单. 一.imageView 所有的视图都是继承自UIView,所以我们 ...
- ioS基础篇(十九)——UIResponder简析
UIResponder类定义了对象相应和控制事件的接口,他是UIApplication.UIView的超类,这类的实例通常被称为应答对象. 一.Responder对象 在iOS系统中,能够响应并处理事 ...
随机推荐
- ABAP 内表 详解
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- [SAP ABAP开发技术总结]OPEN SQL
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- C语言文法定义与C程序的推导过程
program à external_declaration | program external_declaration <程序> -> <外部声明> | < ...
- Codeforces Round #249 (Div. 2)B(贪心法)
B. Pasha Maximizes time limit per test 1 second memory limit per test 256 megabytes input standard i ...
- Codeforces Round #380 (Div. 2, Rated, Based on Technocup 2017 - Elimination Round 2) D. Sea Battle 模拟
D. Sea Battle time limit per test 1 second memory limit per test 256 megabytes input standard input ...
- hdu 5150 Sum Sum Sum 水
Sum Sum Sum Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Prob ...
- HTML笔记(六)文档类型
<!DOCTYPE>声明帮助浏览器正确显示网页.一般放在页面的最前面. DTD是Document Type Definition的缩写,是一套关于标记符的语法规则,是一种文档验证机制. H ...
- maven实现依赖的“全局排除”
大多数java应用源码构建和依赖管理是使用maven来实现的,maven也是java构建和依赖管理的事实上的标准.我们的应用系统也都是基于maven构建的,maven虽然在依赖管理方面确实很牛叉,但是 ...
- 保留ip: Reserved IP addresses
Reserved IP addresses From Wikipedia, the free encyclopedia In the Internet addressing architect ...
- ajax实现无刷新上传附件并且显示进度条的实例
首先:得把php.ini中的post_max_size和upload_max_filesize改成200M或更大(进度条好看效果,默认是2M) html和js代码: <!DOCTYPE html ...