082自定义一个滑块

效果如下:

ViewController.h

1 #import <UIKit/UIKit.h>
2
3 @interface ViewController : UIViewController
4 @end

ViewController.m

 1 #import "ViewController.h"
 2
 3 @interface ViewController ()
 4 - (void)layoutUI;
 5 - (void)sliderDidChange:(UISlider *)sender;
 6 @end
 7
 8 @implementation ViewController
 9
10 - (void)viewDidLoad {
11     [super viewDidLoad];
12
13     [self layoutUI];
14 }
15
16 - (void)didReceiveMemoryWarning {
17     [super didReceiveMemoryWarning];
18     // Dispose of any resources that can be recreated.
19 }
20
21 - (void)layoutUI {
22     CGFloat currentColorVal = 0.5;
23     self.view.backgroundColor = [UIColor colorWithRed:currentColorVal green:currentColorVal blue:currentColorVal alpha:1.0];
24
25     UISlider *sldCustom = [[UISlider alloc] initWithFrame:CGRectMake(0, 0, 260, 50)];
26     sldCustom.center = self.view.center;
27     sldCustom.minimumValue = 0.0;
28     sldCustom.maximumValue = 1.0;
29     sldCustom.value = currentColorVal;
30
31     //sldCustom.minimumTrackTintColor = [UIColor colorWithRed:0.961 green:1.000 blue:0.643 alpha:1.000];
32     //sldCustom.maximumTrackTintColor = [UIColor colorWithRed:0.853 green:0.296 blue:1.000 alpha:1.000];
33     //从最小值到滑块,杆的图片
34     UIImage *imgTrackLeft = [UIImage imageNamed:@"SliderTrackLeft"];
35     imgTrackLeft = [imgTrackLeft stretchableImageWithLeftCapWidth:4 topCapHeight:0];
36     [sldCustom setMinimumTrackImage:imgTrackLeft forState:UIControlStateNormal];
37     //从最大值到滑块,杆的图片
38     UIImage *imgTrackRight = [UIImage imageNamed:@"SliderTrackRight"];
39     imgTrackRight = [imgTrackRight stretchableImageWithLeftCapWidth:4 topCapHeight:0];
40     [sldCustom setMaximumTrackImage:imgTrackRight forState:UIControlStateNormal];
41
42     //设置滑块正常和高亮状态下的图片
43     [sldCustom setThumbImage:[UIImage imageNamed:@"SliderThumb"] forState:UIControlStateNormal];
44     [sldCustom setThumbImage:[UIImage imageNamed:@"SliderThumbHighlighted"] forState:UIControlStateHighlighted];
45     [sldCustom addTarget:self
46                   action:@selector(sliderDidChange:)
47         forControlEvents:UIControlEventValueChanged];
48     [self.view addSubview:sldCustom];
49 }
50
51 - (void)sliderDidChange:(UISlider *)sender {
52     CGFloat currentColorVal = sender.value;
53     NSLog(@"currentColorVal=%0.2f", currentColorVal); //currentColorVal=0.50
54     self.view.backgroundColor = [UIColor colorWithRed:currentColorVal green:currentColorVal blue:currentColorVal alpha:1.0];
55 }
56
57 @end
时间: 2024-08-10 02:11:08

082自定义一个滑块的相关文章

自定义一个类加载器

http://www.cnblogs.com/xrq730/p/4847337.html 为什么要自定义类加载器 类加载机制:http://www.cnblogs.com/xrq730/p/4844915.html 类加载器:http://www.cnblogs.com/xrq730/p/4845144.html 这两篇文章已经详细讲解了类加载机制和类加载器,还剩最后一个问题没有讲解,就是 自定义类加载器.为什么我们要自定义类加载器?因为虽然Java中给用户提供了很多类加载器,但是和实际使用比起

自定义一个处理图片的HttpHandler

有时项目里我们必须将图片进行一定的操作,例如水印,下载等,为了方便和管理我们可以自定义一个HttpHander 来负责这些工作 后台: public class ImageHandler : IHttpHandler { #region IHttpHandler Members public bool IsReusable { get { return true; } } /// <summary> /// 实现IHTTPHandler后必须实现的方法 /// </summary>

Android自定义一个属于自己的时间钟表

1.概述 本文主要讲解的是如何自定义一个时间钟表,通过简单的练习可以简单学习android当中自定义view的一些常用绘图技巧,优化android绘图操作.言归正传,首先看下我们需要实现的效果: 当我们看到这个效果的时候脑子里应该有一定的思路了,我们应该把它分解成以下几个步骤: 1.仪表盘(圆) 2.刻度线(长 中 短) 3.刻度值(1-12) 4.指针(时  分  秒) 5.移动指针,计算指针位置 现在我们已经很清楚自己的思路了,那么我们一个一个来. 第一步:1.自定义View的属性,首先在r

C语言:自定义一个查找字串的功能函数,类似于&lt;string.h&gt;中的strstr()

//自定义一个字符串字串查找标准库函数strstr() #include<stdio.h> #include<string.h> char* myStrstr(char *str1,char *str2); int main() { char *str1 = "hello worl world ld"; char *str2 = " world "; puts(myStrstr(str1,str2)); return 0; } char *m

ExtJs5_继承自定义一个控件

Extjs的开发都可以遵循OOP的原则,其对类的封装也很完善了.自定义一个控件最简单的办法就是继承一个已有的控件.根据上一节的需要,我做了一个Button的子类.首先根据目录结构,在app目录下建立一个ux目录,将自定义控件都放在这个目录下.在ux目录下建立一个文件ButtonTransparent.js. /** * 定义了一个背景透明的Button类,继承于Button */ Ext.define('app.ux.ButtonTransparent', { extend : 'Ext.but

jQuery Validate 表单验证插件----自定义一个验证方法

一.下载依赖包 网盘下载:https://yunpan.cn/cryvgGGAQ3DSW  访问密码 f224 二.引入依赖包 <script src="../../scripts/jquery-1.3.1.js" type="text/javascript"></script> <script src="lib/jquery.validate.js" type="text/javascript"

自定义一个可以被序列化的泛型Dictionary&lt;TKey,TValue&gt;集合

Dictionary是一个键值类型的集合.它有点像数组,但Dictionary的键可以是任何类型,内部使用Hash Table存储键和值.本篇自定义一个类型安全的泛型Dictionary<TKey, TValue>,并且可以被序列化. 为了使自定义的泛型Dictionary<TKey, TValue>可以被序列化成xml,需要实现泛型IXmlSerializable接口. public class MySerializableDictionary<TKey, TValue&g

如何自定义一个NSOperation

Foundation framework提供了两个内置的NSOperation的子类,但是这两个内置的operation不一定能够满足我们的实际的需要.比如我们需要一个完成一个网络请求的operation,里面可能会有许多自定义的逻辑在里面,为了完成这些特有的逻辑,往往需要自定义一个NSOperation的子类来. NSOperation 类本身实现了许多与自定义有关的东西,我们只需要做相对较少的工作就可以了,自定义一个非并发的operation相对简单,只需要处理需要做的逻辑,并且处理canc

自定义一个EL函数

自定义一个EL函数 一般就是一下几个步骤,顺便提供一个工作常用的 案例: 1.编写一个java类,并编写一个静态方法(必需是静态方法),如下所示: public class DateTag { private final static Logger logger = LogManager.getLogger(DateTag.class); private static final long serialVersionUID = -2312310581852395045L; public stat