UISlider滑块控件
2013-10-18 16:46
507 查看
UISlider实例提供一个控件,让用户通过左右拖动一个滑块(可称其为“缩略图”)来选择一个值。默认情况下,滑块的最小值为0.0,最大值为1.0。
当然可以在属性面板中通过设置minimumValue和maximumValue来进行定制这两个值。如果要为控件两端设置样式,可以添加一对相关图像(minimumValueImage和maximumValueImage属性)来加强该设置,也可在代码中通过setMimimumTrackImage:
forState: 和setMaximumTrackImage: forState: 方法来添加设置两端图片。
滑块的continuous属性控制在用户拖动缩略图时一个滑块是否持续发送值更新。设置为NO(默认为YES)时,用户释放缩略图时滑块仅发送一个动作事件。UISlider类还允许直接更新其缩略图组件,通过调用setThumbImage:
forState:方法可定制自己的滑块图片。
自定义UISlider的样式和滑块的代码:
[pre]//左右轨的图片
UIImage *stetchLeftTrack = [UIImage imageNamed:@"snow_bar.png"];
UIImage *stetchRightTrack = [UIImage imageNamed:@"sun_bar.png"];
//滑块图片
UIImage *thumbImage = [UIImage imageNamed:@"mark.png"];
UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(30,320,257,7)];
slider.backgroundColor = [UIColor clearColor];
slider.value = 1.0;
slider.minimumValue = 0.7;
slider.maximumValue = 1.0;
[slider setMinimumTrackImage:stetchLeftTrack forState:UIControlStateNormal];
[slider setMaximumTrackImage:stetchRightTrack forState:UIControlStateNormal];
//注意这里务必加上UIControlStateHightlighted的状态,否则当拖动滑块时滑块将变成原生的控件
[slider setThumbImage:thumbImage forState:UIControlStateHighlighted];
[slider setThumbImage:thumbImage forState:UIControlStateNormal];
//滑块拖动时的事件
[slider addTarget:self action:@selector(sliderValueChanged:) forControlEvents:UIControlEventValueChanged];
//滑块拖动后的事件
[slider addTarget:self action:@selector(sliderDragUp:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:slider];
当然可以在属性面板中通过设置minimumValue和maximumValue来进行定制这两个值。如果要为控件两端设置样式,可以添加一对相关图像(minimumValueImage和maximumValueImage属性)来加强该设置,也可在代码中通过setMimimumTrackImage:
forState: 和setMaximumTrackImage: forState: 方法来添加设置两端图片。
滑块的continuous属性控制在用户拖动缩略图时一个滑块是否持续发送值更新。设置为NO(默认为YES)时,用户释放缩略图时滑块仅发送一个动作事件。UISlider类还允许直接更新其缩略图组件,通过调用setThumbImage:
forState:方法可定制自己的滑块图片。
自定义UISlider的样式和滑块的代码:
[pre]//左右轨的图片
UIImage *stetchLeftTrack = [UIImage imageNamed:@"snow_bar.png"];
UIImage *stetchRightTrack = [UIImage imageNamed:@"sun_bar.png"];
//滑块图片
UIImage *thumbImage = [UIImage imageNamed:@"mark.png"];
UISlider *slider = [[UISlider alloc] initWithFrame:CGRectMake(30,320,257,7)];
slider.backgroundColor = [UIColor clearColor];
slider.value = 1.0;
slider.minimumValue = 0.7;
slider.maximumValue = 1.0;
[slider setMinimumTrackImage:stetchLeftTrack forState:UIControlStateNormal];
[slider setMaximumTrackImage:stetchRightTrack forState:UIControlStateNormal];
//注意这里务必加上UIControlStateHightlighted的状态,否则当拖动滑块时滑块将变成原生的控件
[slider setThumbImage:thumbImage forState:UIControlStateHighlighted];
[slider setThumbImage:thumbImage forState:UIControlStateNormal];
//滑块拖动时的事件
[slider addTarget:self action:@selector(sliderValueChanged:) forControlEvents:UIControlEventValueChanged];
//滑块拖动后的事件
[slider addTarget:self action:@selector(sliderDragUp:) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:slider];
相关文章推荐
- UIButton使用状态
- NGUI系列教程五(角色信息跟随)
- 条款20.宁以pass-by-reference-to-const替换pass-by-vlaue
- EasyUi_学习之路_06
- UITableView中间加入文字
- 一套生产系统UI
- EasyUi_学习之路_05
- UItableView中含输入框(TextField)被键盘遮挡问题
- HDU 2255(KM) - from lanshui_Yang
- Windows phone UI流畅度优化
- UIView大小缩放的动画效果函数
- UIView大小缩放的动画效果函数
- double zhuanhuawei uint8
- android AsyncQueryHandler的分析
- 问题:Unknown class ZBarReaderView in Interface Builder file.
- UESTC 1501 - Defense Lines 离散化+线段树优化DP
- Cassandra Query Language (CQL) v2.0
- ECMA 167 - Volume Descriptor Sequence 卷描述符序列
- 【GUI编程之准备--1】MAC 编译wxWidgets 源码
- C# Dictionary<TKey, TValue>的学习