add contact

import UIKit

class AddContactViewController: UIViewController {

var photoView:UIImageView!

var nameField:UITextField!

var phoneField:UITextField!

var addressTextView:UITextView!

override func viewDidLoad() {

super.viewDidLoad()

self.view.backgroundColor = #colorLiteral(red: 0.9568627477, green: 0.6588235497, blue: 0.5450980663, alpha: 1)

setNavigationItem()

setupViews()

}

//配置导航栏

func setNavigationItem() {

self.navigationItem.leftBarButtonItem = UIBarButtonItem(title: "取消", style: .done, target: self, action: #selector(cancelAction))

self.navigationItem.rightBarButtonItem = UIBarButtonItem(title: "保存", style: .done, target: self, action: #selector(saveAction))

}

func setupViews() {

//图片

photoView = UIImageView(frame:CGRect(x: 132, y: 80, width: 150, height: 150))

photoView.backgroundColor = #colorLiteral(red: 0.9764705896, green: 0.9154091712, blue: 0.7610167191, alpha: 1)

photoView.clipsToBounds = true

photoView.layer.cornerRadius = 50

self.view.addSubview(photoView)

//添加轻拍手势

let tap = UITapGestureRecognizer(target: self, action: #selector(tapAction))

//打开交互

photoView.isUserInteractionEnabled = true

//photoView上添加手势

photoView.addGestureRecognizer(tap)

//姓名

nameField = UITextField(frame: CGRect(x: 107, y: 240, width: 200, height: 40))

nameField.placeholder = "请输入姓名"

nameField.borderStyle = .roundedRect

self.view.addSubview(nameField)

//电话

phoneField = UITextField(frame: CGRect(x: 107, y: 290, width: 200, height: 40))

phoneField.placeholder = "请输入电话"

phoneField.borderStyle = .roundedRect

self.view.addSubview(phoneField)

//住址

addressTextView = UITextView(frame: CGRect(x: 107, y: 340, width: 200, height: 120))

addressTextView.text = "地址:"

addressTextView.layer.borderWidth = 1.0

addressTextView.layer.borderColor = UIColor.gray.cgColor

self.view.addSubview(addressTextView)

}

func cancelAction(sender:UIBarButtonItem)  {

//        print("取消")

self.dismiss(animated: true, completion: nil)

}

func saveAction(sender:UIBarButtonItem) {

//        print("保存成功")

//姓名或者电话号码为空则不添加

if nameField.text?.characters.count == 0 || phoneField.text?.characters.count == 0 {

return print("姓名或电话号码为空")

}

let aContact = Contact()

aContact.name = nameField.text

aContact.phone = phoneField.text

aContact.address = addressTextView.text

aContact.photo = photoView.image

//添加联系人

//单例调用添加联系人的方法

ContactManger.shared.addContact(aContact: aContact)

self.dismiss(animated: true, completion: nil)

}

//MARK:- 轻拍手势关联方法

func tapAction(sender:UITapGestureRecognizer) {

//        print("点击图片")

//添加弹出视图sheet样式的

let alertVC = UIAlertController(title: nil, message: nil, preferredStyle: .actionSheet)

//添加按钮 相机 相册 取消

let action1 = UIAlertAction(title: "相机", style: .destructive, handler: {

(sender:UIAlertAction) in

//            print("选择了相机")

//调用选择相机的方法

self.pickerImageFromCamera()

})

let action2 = UIAlertAction(title: "相册", style: .destructive, handler: {

(sender:UIAlertAction) in

//            print("选择了相册")

//调用选择相册的方法

self.piskerImageFromPhotoLibrary()

})

let action3 = UIAlertAction(title: "取消", style: .cancel, handler: nil)

//将按钮添加到alertVC上

alertVC.addAction(action1)

alertVC.addAction(action2)

alertVC.addAction(action3)

//模态出alertVC

self.present(alertVC, animated: true, completion: nil)

}

//选择相机

func pickerImageFromCamera() {

}

//选择相册

func piskerImageFromPhotoLibrary() {

}

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 prepare(for segue: UIStoryboardSegue, sender: Any?) {

// Get the new view controller using segue.destinationViewController.

// Pass the selected object to the new view controller.

}

*/

}

你可能感兴趣的:(add contact)