swift - 如何为提示从图库或相机胶卷中拍照的按钮创建警报 View ?

标签 swift ios9 uialertview

import UIKit

class AccountViewController: UIViewController,UINavigationControllerDelegate, UIImagePickerControllerDelegate {

@IBOutlet weak var imageView: UIImageView!

@IBOutlet weak var chooseButton: UIButton!

let imagePicker = UIImagePickerController()

@IBOutlet weak var mySwitch: UISwitch!
@IBOutlet weak var myStatus: UILabel!
@IBAction func mySwitchTapped(sender: AnyObject) {

 updateSwitchStatus()

}
override func viewDidLoad() {
    super.viewDidLoad()
    updateSwitchStatus()

    self.navigationController!.navigationBarHidden = true
    self.view.backgroundColor = UIColor.whiteColor()

    // Do any additional setup after loading the view.
}

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

func updateSwitchStatus(){

    if mySwitch.on{

        myStatus.textColor = UIColor(colorLiteralRed: 0.142, green: 0.742, blue: 0.146, alpha: 1.00)
       myStatus.text = "I'M ONLINE"

    }    
    else{

        myStatus.textColor = UIColor(colorLiteralRed: 0.896, green: 0.085, blue: 0.000, alpha: 1.00)
        myStatus.text = "I'M OFFLINE"
    }
}
@IBAction func shootPhoto() {
    imagePicker.allowsEditing = false
    imagePicker.sourceType = UIImagePickerControllerSourceType.Camera
    imagePicker.cameraCaptureMode = .Photo
    imagePicker.modalPresentationStyle = .FullScreen
    presentViewController(imagePicker,
        animated: true,
        completion: nil)
}

   @IBAction func btnClicked(){

    if (UIImagePickerController.isSourceTypeAvailable(UIImagePickerControllerSourceType.SavedPhotosAlbum)){
        print("Button capture")
        imagePicker.delegate = self
        imagePicker.sourceType = UIImagePickerControllerSourceType.SavedPhotosAlbum;
        imagePicker.allowsEditing = false

        self.presentViewController(imagePicker, animated: true, completion: nil)
    }
}

func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage, editingInfo: NSDictionary) {
    self.dismissViewControllerAnimated(true, completion: {()-> Void in

        })

    imageView.image = image

}

我正在使用更新版本的 swift。我猜在ios9中不支持alertview。那么我该如何实现这个要求从图库或相机胶卷中拍照的警报呢?

最佳答案

UIAlertView 仍然可以使用,但从 iOS 8 开始已弃用。呈现警报的首选方式是使用具有 UIAlertControllerStyleAlert 样式的 UIAlertController .

    let alertController = UIAlertController(title: "Alert title", message: "Alert Message", preferredStyle: .Alert)

    let cameraRollAction = UIAlertAction(title: "Camera Roll", style: .Default) { (action) in
        self.imagePicker.delegate = self
        self.imagePicker.sourceType = UIImagePickerControllerSourceType.SavedPhotosAlbum;
        self.imagePicker.allowsEditing = false
        self.presentViewController(self.imagePicker, animated: true, completion: nil)
    }
    alertController.addAction(cameraRollAction)

    let takePictureAction = UIAlertAction(title: "Take a picture", style: .Default) { (action) in
        self.imagePicker.allowsEditing = false
        self.imagePicker.sourceType = UIImagePickerControllerSourceType.Camera
        self.imagePicker.cameraCaptureMode = .Photo
        self.imagePicker.modalPresentationStyle = .FullScreen
        self.presentViewController(self.imagePicker,
            animated: true,
            completion: nil)
    }
    alertController.addAction(takePictureAction)

    let cancelAction = UIAlertAction(title: "Cancel", style: .Cancel) { (action) in
    }
    alertController.addAction(cancelAction)

    self.presentViewController(alertController, animated: true) {
    }

关于swift - 如何为提示从图库或相机胶卷中拍照的按钮创建警报 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34553397/

相关文章:

swift - UIImageView 未正确 reshape

iOS:减少应用程序进入前台时 UIAlertView 显示的延迟

ios - 不要关闭 UIAlertController

swift - 从 uiAlertController 中的文本字段检索内容

ios - Swift - 覆盖 tableview 函数 - 方法不会覆盖其父类(super class)中的任何方法

swift - 点击时增加/减少表格 View 单元格的大小 - Swift

swift - 在 AppDelegate 中预加载 adMob 插屏广告并在其他 UIViewController 中显示广告

swift - 如何在 Swift 后台一段时间后呈现 UIViewController?

ios - 子类化 UIFont

iphone - 使 UIAlertView 按钮在按下时触发功能