• swift 学习之 UIAlertViewController


    //
    //  PushViewController.swift
    //  tab
    //
    //  Created by su on 15/12/7.
    //  Copyright © 2015年 tian. All rights reserved.
    //

    import UIKit

    class PushViewController: UIViewController {
        var alert1: UIAlertController!
        var alert2: UIAlertController!
        var actionSheet: UIAlertController!
       
        override func viewDidLoad() {
            super.viewDidLoad()
    //        label.frame = CGRect(x: 20, y: 100, Tools().SCREEN_WIDTH, height: 100)
    //        label.backgroundColor = Tools().RGB(r: 123, g: 234, b: 132)
           
           
            // 定义一个按钮,显示最简单的 Alert
            let button1 = UIButton(type: UIButtonType.System)
            button1.frame = CGRectMake(self.view.frame.width/2 - 200, 50, 400, 50)
            button1.setTitle("最简单的 Alert", forState: UIControlState.Normal)
            button1.addTarget(self, action: "buttonAction:", forControlEvents: UIControlEvents.TouchUpInside)
            button1.tag = 1
            self.view.addSubview(button1)
           
           
            // 定义一个按钮,显示带文本框的 Alert
            let button2 = UIButton(type: UIButtonType.System)
            button2.frame = CGRectMake(self.view.frame.width/2 - 200, 150, 400, 50)
            button2.setTitle("带文本框的 Alert", forState: UIControlState.Normal)
            button2.addTarget(self, action: "buttonAction:", forControlEvents: UIControlEvents.TouchUpInside)
            button2.tag = 2
             self.view.addSubview(button2)
            // 定义一个按钮,显示上拉菜单
            let button3 = UIButton(type: UIButtonType.System)
            button3.frame = CGRectMake(self.view.frame.width/2 - 200, 250, 400, 50)
            button3.setTitle("上拉菜单", forState: UIControlState.Normal)
            button3.addTarget(self, action: "buttonAction:", forControlEvents: UIControlEvents.TouchUpInside)
            button3.tag = 3
            self.view.addSubview(button3)

            // 定义 cancel、ok、save、delete、reset 的 UIAlertAction
            let cancelAction = UIAlertAction(title: "cancel", style: UIAlertActionStyle.Cancel, handler: nil)
            let okAction = UIAlertAction(title: "ok", style: UIAlertActionStyle.Default){
                (action: UIAlertAction!) -> Void in
                print("you choose ok")
            }
            let saveAction = UIAlertAction(title: "save", style: UIAlertActionStyle.Default){
                (action: UIAlertAction!) -> Void in
                print("you choose save")
            }
            let deleteAction = UIAlertAction(title: "delete", style: UIAlertActionStyle.Destructive){
                (action: UIAlertAction!) -> Void in
                print("you choose delete")
            }
            let resetAction = UIAlertAction(title: "reset", style: UIAlertActionStyle.Destructive){
                (action: UIAlertAction!) -> Void in
                print("you choose reset")
            }
           
           
            // 1、初始化最简单的 Alert
            alert1 = UIAlertController(title: "simple alert", message: "this is a simple alert", preferredStyle: UIAlertControllerStyle.Alert)
            alert1.addAction(cancelAction)
            alert1.addAction(resetAction)
            alert1.addAction(okAction)
           
            // 2、初始化带文本框的 Alert
            alert2 = UIAlertController(title: "login alert", message: "please enter your name and password", preferredStyle: UIAlertControllerStyle.Alert)
            alert2.addTextFieldWithConfigurationHandler {
                (textField: UITextField!) -> Void in
                textField.placeholder = "name"
            }
            alert2.addTextFieldWithConfigurationHandler {
                (textField: UITextField!) -> Void in
                textField.placeholder = "password"
                textField.secureTextEntry = true
            }
            let loginAction = UIAlertAction(title: "login", style: UIAlertActionStyle.Default) {
                (action: UIAlertAction!) -> Void in
                let name = self.alert2.textFields!.first
                let password = self.alert2.textFields!.last
                print("name : (name!.text) password : (password!.text)")
            }
            alert2.addAction(loginAction)
           
            // 3、初始化上拉菜单
            actionSheet = UIAlertController(title: "simple action sheet", message: "action sheet message", preferredStyle: UIAlertControllerStyle.ActionSheet)
            actionSheet.addAction(cancelAction)
            actionSheet.addAction(deleteAction)
            actionSheet.addAction(saveAction)
           
         
        }
       
        /// 按钮响应事件
        func buttonAction(sender: UIButton) {
            let num = sender.tag
            switch num {
            case 1:
                self.presentViewController(alert1, animated: true, completion: nil)
            case 2:
                self.presentViewController(alert2, animated: true, completion: nil)
            case 3:
                self.presentViewController(actionSheet, animated: true, completion: nil)
            default:
                break
            }
        }

        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.
        }
        */
    }
  • 相关阅读:
    mysql 存中文乱码
    解决办法:Message: 对实体 "useUnicode" 的引用必须以 ';' 分隔符结尾
    windows无法安装到这个磁盘选中的磁盘具有MBR分区表解决办法
    Windows快速添加开机启动项
    使用markdown做本地笔记软件/编辑器
    Apache负载均衡配置
    setuptools包的使用
    Git clone报错Someone Could Be Eavesdropping On You Right Now (Man-In-The-Middle Attack)!
    Code Review 的项目
    Pytorch 之Torch
  • 原文地址:https://www.cnblogs.com/tian-sun/p/5028471.html
Copyright © 2020-2023  润新知