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. 两个队列+k叉哈夫曼树 HDU 5884

    // 两个队列+k叉哈夫曼树 HDU 5884 // camp题解: // 题意:nn个有序序列的归并排序.每次可以选择不超过kk个序列进行合并,合并代价为这些序列的长度和.总的合并代价不能超过TT, ...

  2. mysql根据时间查询前一天数据

    MySql数据库如何根据时间查询前一天的数据?本文整理了几个解决方法,有需要的朋友参考下.   本节内容:用MySql怎么根据时间查询前一天的数据. 例1: 代码示例: select * from t ...

  3. Oracle 表空间修改字段大小

    1.修改字段大小 当表中已经存在数据,就不能直接修改某字段大小,需要新建一个字段来过渡   ALTER TABLE TABLE RENAME COLUMN GRP TO FUND_GRP_1; ); ...

  4. android 运行 python

    Jython is an implementation of the Python programming language designed to run on the Java platform. ...

  5. ListCell Animation in ListView

    After a long time I am back again with new stuffs. I have seen that JavaFX has got so many demand no ...

  6. Message Forwarding

    [Preprocess] 在使用forwarding机制前,会先经历2个步骤,只有当这2个步骤均失败的情况下,才会激活forwarding. 1.+(BOOL)resolveInstanceMetho ...

  7. CIDR

    CIDR的介绍: CIDR(Classless Inter-Domain Routing,无类域间路由选择)它消除了传统的A类.B类和C类地址以及划分子网的概念,因而可以更加有效地分配IPv4的地址空 ...

  8. Linux下的Shell编程

    从程序员的角度来看, Shell本身是一种用C语言编写的程序,从用户的角度来看,Shell是用户与Linux操作系统沟通的桥梁.用户既可以输入命令执行,又可以利用 Shell脚本编程,完成更加复杂的操 ...

  9. DataTemplate和ControlTemplate的关系

    DataTemplate和ControlTemplate的关系(转载自haiziguo) 一.ContentControl中的DataTemplate 在开始之前,我们先去看一下ContentCont ...

  10. Spring MVC防止数据重复提交

    现实开发中表单重复提交的例子很多,就包括手上这个门户的项目也有这种应用场景,用的次数多,但是总结,这还是第一次. 一.基本原理 使用token,给所有的url加一个拦截器,在拦截器里面用java的UU ...