控件集合

控件集合

Switch->開關
Slider->滑條
Stepper->步進器
Progress->進度條
Activity->活動指示器
Segement->分段選擇器

 override func viewDidLoad() {
        super.viewDidLoad()
        
        //設置背景顏色
        self.view.backgroundColor = UIColor.greenColor()
        
        self.creatSwitch()
        self.creatSlider()
        self.creatStepper()
        self.creatProgress()
        self.creatActivity()
        self.creatSegement()
    }

}

//MARK: - 創建控件
extension ViewController{

    //1.開關
    func creatSwitch() {
        
        //1.創建開關對象
        //UISwitch:UIControl:UIView
        let sw = UISwitch.init(frame: CGRectMake(100, 100, 100, 50))
        //2.添加到界面上
        self.view.addSubview(sw)
        
        //3.核心屬性:開關狀態(默認是:關)
        //設置開關的狀態
        sw.on = true  //false -> 關
        sw.setOn(false, animated: true)
        //拿到當前的狀態
        print(sw.on)
        
        //4.核心方法:
        //參數1:調用方法的對象
        //參數2:指定的事件發生后參數1要去調用的方法對應的selector
        //參數3:事件
        //功能:當開關的值(開關的狀態)發生改變的時候,self會去調用switchAction方法
        sw.addTarget(self, action: "switchAction:", forControlEvents: .ValueChanged)
        
        //5.設置開關開的狀態的顏色(默認是綠色)
        sw.onTintColor = UIColor.redColor()
        //6.開關關閉的時候的邊框顏色
        sw.tintColor = UIColor.purpleColor()
        //7.設置開關上的滑塊的顏色
        sw.thumbTintColor = UIColor.yellowColor()
        
        
        
    }
    
    //2.滑條
    func creatSlider() {
        
        //1.創建滑條對象
        //UISlider:UIControl:UIView
        let slider = UISlider.init(frame: CGRectMake(100, 160, 200, 20))
        //2.添加到界面上
        self.view.addSubview(slider)
        
        //3.核心屬性:值
        //value:滑塊的位置對應的值(默認是0~1)
        slider.value = 0.5
        //最小值和最大值
        slider.minimumValue = 0
        slider.maximumValue = 100
        
        //4.核心方法
        slider.addTarget(self, action: "sliderAction:", forControlEvents: .ValueChanged)
        
        //7.是否連續改變
        slider.continuous = false
        
        //5.和顏色相關的屬性
        
        //6.和圖片相關的屬性
        
    
    }
    
    //3.步進器
    func creatStepper() {
        
        //1.創建步進器對象
        let stepper = UIStepper.init(frame: CGRectMake(100, 200, 100, 50))
        //2.添加到界面上
        self.view.addSubview(stepper)
        
        //3.核心屬性:值
        //當前值
        stepper.value = 1
        print(stepper.value)
        //最小值和最大值
        stepper.minimumValue = 0
        stepper.maximumValue = 10
        //步進(每按一下加或者減,增加/減少的值)
        stepper.stepValue = 1  //步進值必須大于0
        
        //4.核心方法
        stepper.addTarget(self, action: "stepperAction:", forControlEvents: .ValueChanged)
        
        //5.設置值是否連續改變(按住不放的時候)
        stepper.continuous = false
        
        //6.設置是否重復 false->按住不放的時候不計數;true->按住不放的時候計數(默認)
        stepper.autorepeat = false
        
        
        //7.設置填充顏色
        stepper.tintColor = UIColor.redColor()
        
    }
    
    //4.進度條
    func creatProgress() {
        
        //1.創建進度條對象
        //UIProgressView : UIView
        let progress = UIProgressView.init(frame: CGRectMake(100, 300, 200, 20))
        progress.tag = 100
        //2.添加到界面上
        self.view.addSubview(progress)
        
        //3.核心屬性
        //進度:0~1
        //設置當前進度
        progress.progress = 0.5
        progress.setProgress(0.6, animated: true)
        //4.顏色相關
        //5.圖片相關
    }
    
    //5.活動指示器
    func creatActivity() {
        
        //1.創建活動指示器對象
        //UIActivityIndicatorView : UIView
        let activity = UIActivityIndicatorView.init(frame: CGRectMake(100, 360, 50, 50))
        //2.添加到界面上
        self.view.addSubview(activity)
        //3.想要讓活動指示器顯示,必須讓它開始動畫
        activity.startAnimating()
        //4.停止動畫->活動指示器就會消失
        //activity.stopAnimating()
        
        //5.設置活動指示器的樣式
        activity.activityIndicatorViewStyle = .WhiteLarge
        
    }
    
    //6.多段選擇器
    func creatSegement() {
        
        //1.創建多段選擇器對象
        //UISegmentedControl : UIControl
        //參數1:分段選擇器上的內容對應的數組
        let segemnet = UISegmentedControl.init(items: ["海賊王","火影忍者","死神"])
        segemnet.frame = CGRectMake(100, 400, 200, 50)
        //2.顯示在界面上
        self.view.addSubview(segemnet)
        //3.核心屬性
        //a.每個分段上的內容 ->通過創建分段選擇器的時候去設置
        //b.當前選中的分段的下標(從0開始)
        segemnet.selectedSegmentIndex = 0
        
        //4.核心方法
        segemnet.addTarget(self, action: "segementAction:", forControlEvents: .ValueChanged)
        
        //5.拿到分段選擇的分段數
        print(segemnet.numberOfSegments)
        
        //6.設置填充顏色
        segemnet.tintColor = UIColor.whiteColor()
    }
    
}

//MARK: - 事件響應
extension ViewController{
    
    //4.分段選擇器事件
    func segementAction(segement:UISegmentedControl) {
        
        print(segement.selectedSegmentIndex)
        //拿到當前被選中的分段的title
        print(segement.titleForSegmentAtIndex(segement.selectedSegmentIndex))
    }
    
    //3.步進器
    func stepperAction(stepper:UIStepper) {
        
        print(stepper.value)
    }
    
    //2.滑條
    func sliderAction(slider:UISlider) {
        
        print(slider.value)
        //拿到進度條
        let progress = self.view.viewWithTag(100) as! UIProgressView
        let t = slider.value/(slider.maximumValue - slider.minimumValue)
        progress.setProgress(t, animated: true)
        
    }

    //1.開關事件
    func switchAction(sw:UISwitch) {
        
        if sw.on {
            
            print("開關打開")
        }else{
        
            print("開關關閉")
        }
    }
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容