UISlider

     override func viewDidLoad() {
         super.viewDidLoad()

         titleLabel.text = titleString

         // Do any additional setup after loading the view.

         //创建
         var slider:UISlider = UISlider(frame: CGRectMake(, , , ))

         //添加到视图上
         self.view.addSubview(slider)

         //设置最小值
         slider.minimumValue = 

         //设置最大值
         slider.maximumValue = 

         //设置默认值
         slider.value = 

         //设置左端图片
         slider.setMinimumTrackImage(UIImage(named: "minimumTrackImage"), forState: UIControlState.Normal)

         //设置又端图片
         slider.setMaximumTrackImage(UIImage(named: "maximumTrackImage"), forState: UIControlState.Normal)

         //读取当滑块控件的值:
         var value = slider.value
         println(value)

         //添加通知,获取值改变
         slider.addTarget(self, action: "sliderValueChange:", forControlEvents: UIControlEvents.ValueChanged)

         //continuous默认是true,设置成false后,只有停止拖动才会触发sliderValueChange:方法
         slider.continuous = false

         //-----自定义滑块

         //定义左右图片
         var stetchLeftTrack:UIImage! = UIImage(named: "leftTrack.png")
         var stetchRightTrack:UIImage! = UIImage(named: "rightTrack.png")

         //定义滑块图片
          var thumbImage:UIImage! = UIImage(named: "thumbImage.png")

         //创建UISlider对象
         var newSlider:UISlider = UISlider(frame: CGRectMake(, , , ))
         newSlider.backgroundColor = UIColor.clearColor()
         newSlider.minimumValue = 0.5
         newSlider.maximumValue = 1.5
         newSlider.value = 1.0

         //设置左右图片
         newSlider.setMinimumTrackImage(stetchLeftTrack, forState: UIControlState.Normal)
         newSlider.setMaximumTrackImage(stetchRightTrack, forState: UIControlState.Normal)

         //设置拖动圆点的图片,注意这里要加UIControlState.Highlighted的状态,否则当拖动滑块时滑块将变成原生的控件
         newSlider.setThumbImage(thumbImage, forState: UIControlState.Normal)
         newSlider.setThumbImage(thumbImage, forState: UIControlState.Highlighted)

         //添加通知,获取值改变
         newSlider.addTarget(self, action: "newSliderValueChange:", forControlEvents: UIControlEvents.ValueChanged)

         //滑动拖动后的事件
         newSlider.addTarget(self, action: "newSliderTouchUpInside:", forControlEvents: UIControlEvents.TouchUpInside)

         self.view.addSubview(newSlider)
     }

     override func didReceiveMemoryWarning() {
         super.didReceiveMemoryWarning()
         // Dispose of any resources that can be recreated.
     }

     /*
     // MARK: - Navigation

     // In a storyboard-based application, you will often want to do a little preparation before navigation
     override func prepareForSegue(segue: UIStoryboardSegue!, sender: AnyObject!) {
         // Get the new view controller using segue.destinationViewController.
         // Pass the selected object to the new view controller.
     }
     */

     //slider值改变触发的方法
     func sliderValueChange(sender: AnyObject?)
     {
 //        var newSlider:UISlider = sender as UISlider

         //2015年5月2后修改
         var newSlider:UISlider = sender as! UISlider
         var value = newSlider.value
         println(value)
     }

     //自定义滑块使用

     //拖动事件
     func newSliderValueChange(sender: AnyObject?)
     {
 //        var newSlider:UISlider = sender as UISlider

         //2015年5月2后修改
         var newSlider:UISlider = sender as! UISlider
         println(newSlider.value)
     }

     //滑动拖动后的事件
     func newSliderTouchUpInside(sender: AnyObject?)
     {
 //        var newSlider:UISlider = sender as UISlider

         //2015年5月2后修改
         var newSlider:UISlider = sender as! UISlider
         println(newSlider.value)
     }
     
 

iOS开发——UI篇Swift篇&UISlider的更多相关文章

  1. iOS开发——技术精华Swift篇&Swift 2.0和Objective-C2.0混编之第三方框架的使用

    swift 语言是苹果公司在2014年的WWDC大会上发布的全新的编程语言.Swift语言继承了C语言以及Objective-C的特性,且克服了C语言的兼容性问题.Swift语言采用安全编程模式,且引 ...

  2. iOS开发——新特性Swift篇&Swift 2.0 异常处理

    Swift 2.0 异常处理 WWDC 2015 宣布了新的 Swift 2.0. 这次重大更新给 Swift 提供了新的异常处理方法.这篇文章会主要围绕这个方面进行讨论. 如何建造异常类型? 在 i ...

  3. iOS开发——UI精选OC篇&UIApplication,UIWindow,UIViewController,UIView(layer)简单介绍

    UIApplication,UIWindow,UIViewController,UIView(layer)简单介绍 一:UIApplication:单例(关于单例后面的文章中会详细介绍,你现在只要知道 ...

  4. iOS开发——网络编程Swift篇&Alamofire详解

    Alamofire详解 预览图 Swift Alamofire 简介 Alamofire是 Swift 语言的 HTTP 网络开发工具包,相当于Swift实现AFNetworking版本. 当然,AF ...

  5. ios开发——实用技术总结Swift篇&swift常用开发技术总结

    swift常用开发技术总结 懒加载:属性,数组(字典),控件... 数组(懒加载): lazy var shops:Array<Dictionary<String, String>& ...

  6. ios开发——实用技术篇Swift篇&播放MP3

    播放MP3 // MARK: - 播放MP3 /*----- mp3 ------*/ //定时器- func updateTime() { //获取音频播放器播放的进度,单位秒 var cuTime ...

  7. iOS开发——网络编程Swift篇&(八)SwiftyJSON详解

    SwiftyJSON详解 最近看了一些网络请求的例子,发现Swift在解析JSON数据时特别别扭,总是要写一大堆的downcast(as?)和可选(Optional),看?号都看花了.随后发现了这个库 ...

  8. ios开发——实用技术篇Swift篇&地址薄、短信、邮件

    //返回按钮事件 @IBAction func backButtonClick() { self.navigationController?.popViewControllerAnimated(tru ...

  9. iOS开发——图形编程Swift篇&CAShapeLayer实现圆形图片加载动画

    CAShapeLayer实现圆形图片加载动画 几个星期之前,Michael Villar在Motion试验中创建一个非常有趣的加载动画. 下面的GIF图片展示这个加载动画,它将一个圆形进度指示器和圆形 ...

  10. iOS开发零基础--Swift篇 元组

    元组的介绍 元组是Swift中特有的,OC中并没有相关类型 它是什么呢? 它是一种数据结构,在数学中应用广泛 类似于数组或者字典 可以用于定义一组数据 组成元组类型的数据可以称为“元素” 元组的定义 ...

随机推荐

  1. 图解WPF程序打包全过程

    首先打开已经完成的工程,如图: 下面开始制作安装程序包. 第一步:[文件]——[新建]——[项目]——安装项目. 名称——可以自己根据要求修改. 位置——是指你要制作的安装文件存放在什么目录内,可以根 ...

  2. python堡垒机

    堡垒机 windows下安装python3的paramiko模块后一些报错总结: error: Unable to find vcvarsall.bat [官网对此问题的描述] : https://d ...

  3. WebSocket with Flask

    转自:https://blog.shonenada.com/post/websocket-with-flask/ WebSocket with Flask HTML5 以前,HTML 还不支持 Web ...

  4. 以Akka为示例,介绍Actor模型

    许多开发者在创建和维护多线程应用程序时经历过各种各样的问题,他们希望能在一个更高层次的抽象上进行工作,以避免直接和线程与锁打交道.为了帮助这些开发者,Arun Manivannan编写了一系列的博客帖 ...

  5. IE浏览器 json异常

    当使用json数据结构时,如果对象数组最后一个元素后面依然跟一个“,”,在非IE浏览器下运行正常,但是,在IE浏览器上,则会报错. 如果使用for循环遍历对象数组时,由于后面多了一个分割符" ...

  6. iOS tableview 优化总结

    根据网络上的优化方法进行了总括.并未仔细进行语言组织.正在这些优化方法进行学习,见另一篇文章 提高app流畅度 1.cell子控件创建写在 initWithStyle:reuseIdentifier ...

  7. 非对称认证方式 可以用在 asp.net webapi 的安全机制里面

    //Client端调用 static void Main(string[] args) { string publicKey = "DpLMCOihcYI2i6DaMbso9Dzo1miy7 ...

  8. nova service-list

    nova-scheduler start/running, process 4820root@ruiy-controller-a:/var/log/nova# nova service-list+-- ...

  9. flask中的request对象方法

    'accept_charsets','accept_encodings','accept_languages','accept_mimetypes','access_route','applicati ...

  10. UVaLive 7500 Boxes and Balls (数学)

    题意:给定 n 个球,每次从每篮子里拿出来一个放在一个新篮子里,并移除相同的,按球的个数进行排序,问你用最多几个球能完成循环. 析:数学问题,很容易发现前n项和就是最多的球数,所以我们只要找最大的n项 ...