From 5ca691ec52cb4bb64841b0d85252af762e48c2ca Mon Sep 17 00:00:00 2001
From: 杨锴 <841720330@qq.com>
Date: 星期四, 22 八月 2024 14:58:07 +0800
Subject: [PATCH] fix UI

---
 XQMuse/Root/Me/VC/UserProfileVC.swift |  104 ++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 92 insertions(+), 12 deletions(-)

diff --git a/XQMuse/Root/Me/VC/UserProfileVC.swift b/XQMuse/Root/Me/VC/UserProfileVC.swift
index 226ef82..995c1e1 100644
--- a/XQMuse/Root/Me/VC/UserProfileVC.swift
+++ b/XQMuse/Root/Me/VC/UserProfileVC.swift
@@ -8,18 +8,33 @@
 import UIKit
 import QMUIKit
 import JQTools
+import TZImagePickerController
 
 class UserProfileVC: BaseVC {
 
 				@IBOutlet weak var image_user: UIImageView!
 				@IBOutlet weak var tf_gender: QMUITextField!
 				@IBOutlet weak var tf_birthday: QMUITextField!
-				
-    override func viewDidLoad() {
-        super.viewDidLoad()
+
+				private var clipSize = CGSize(width: JQ_ScreenW, height: JQ_ScreenW) //裁剪大小
+				private var clipFrame:CGRect{
+								get{
+												if clipSize.width == 0 || clipSize.height == 0 {
+																assert(false,"未设置裁剪框大小")
+												}
+
+												var clipFrame = CGRect.zero
+												clipFrame.size = clipSize
+												clipFrame.origin = CGPoint(x: (JQ_ScreenW - clipSize.width)/2.0, y: (JQ_ScreenH - clipSize.width)/2.0)
+												return clipFrame
+								}
+				}
+
+				override func viewDidLoad() {
+								super.viewDidLoad()
 								title = "个人资料"
-    }
-				
+				}
+
 				override func setUI() {
 								super.setUI()
 								view.backgroundColor = UIColor(hexString:"#fafafa")
@@ -32,9 +47,34 @@
 				}
 
 				@objc func selectUserProfile(){
-								JQ_ImagePickerTool.getSharedInstance().singleImage({ [unowned self] image in
-												self.image_user.image = image
-								}, clipSize: CGSize(width: JQ_ScreenW, height: JQ_ScreenW))
+								CommonAlertSheetView.show(items: ["拍照","从相册选择"]) {[unowned self] index in
+												if index == 0{
+
+																guard UIImagePickerController.isSourceTypeAvailable(.camera) else{
+																				alertError(msg: "当前设备相机不可用");return
+																}
+
+																let p = UIImagePickerController()
+																p.delegate = self
+																p.modalPresentationStyle = .fullScreen
+																p.allowsEditing = true
+																p.sourceType = .camera
+																p.cameraDevice = .front
+																self.present(p, animated: true)
+												}else{
+																let p = TZImagePickerController(maxImagesCount: 1, columnNumber: 3, delegate: self)
+																p!.modalPresentationStyle = .fullScreen
+																p!.allowTakeVideo = false
+																p!.allowTakePicture = false
+																p!.sortAscendingByModificationDate = true
+																p!.scaleAspectFillCrop = true
+																p!.allowPickingVideo = false
+																p!.maxImagesCount = 1
+																p!.allowCrop = true
+																p!.cropRect = self.clipFrame
+																self.present(p!, animated: true, completion: nil)
+												}
+								}
 				}
 }
 
@@ -42,13 +82,12 @@
 				func textFieldShouldBeginEditing(_ textField: UITextField) -> Bool {
 
 								if textField == tf_gender{
-												let items = ["男","女"]
+												let items = ["男","女","保密"]
 												CommonAlertSheetView.show(items: items) {[weak self] index in
 																guard let weakSelf = self else { return }
 																guard textField.text != items[index] else {return}
 																textField.text = items[index]
 																var gender:GenderType!
-
 																if index == 0{
 																				gender = .man
 																}else{
@@ -59,12 +98,53 @@
 
 								if textField == tf_birthday{
 												view.endEditing(true)
-												CommonDatePickerView.show(before: 60, after: 0, type: .YMD) { year, month, day,_,_ in
-																textField.text = String(format: "%ld-%02ld-%02ld", year!,month!,day!)
+												BitrhdayPickerView.show(title: "", type: .YMD) { date in
+																
 												}
+//												CommonDatePickerView.show(before: 60, after: 0, type: .YMD) { year, month, day,_,_ in
+//																textField.text = String(format: "%ld-%02ld-%02ld", year!,month!,day!)
+//												}
 												return false
 								}
 
 								return false
 				}
 }
+
+extension UserProfileVC:TZImagePickerControllerDelegate{
+				public func imagePickerController(_ picker: TZImagePickerController!, didFinishPickingPhotos photos: [UIImage]!, sourceAssets assets: [Any]!, isSelectOriginalPhoto: Bool) {
+								picker.selectedAssets = NSMutableArray(array: assets)
+				}
+
+				public func imagePickerController(_ picker: TZImagePickerController!, didFinishPickingAndEditingVideo coverImage: UIImage!, outputPath: String!, error errorMsg: String!) {
+
+				}
+}
+
+extension UserProfileVC:UIImagePickerControllerDelegate & UINavigationControllerDelegate{
+				//成功选取
+				public func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
+
+								var image:UIImage?
+								image = (info[UIImagePickerController.InfoKey.originalImage] as! UIImage)
+								let corpperVC = VPImageCropperViewController(image: image!, cropFrame: clipFrame, limitScaleRatio: Int(image!.scale))
+								corpperVC.modalPresentationStyle = .fullScreen
+								DispatchQueue.main.asyncAfter(deadline: .now()+1.0) {
+												JQ_currentViewController().present(corpperVC, animated: true, completion: nil)
+								}
+
+								unowned let weakSelf = self
+								corpperVC.imageCropperHandler { (vc, image) in
+
+								} cancelClouse: {
+												corpperVC.dismiss(animated: true) {
+
+												}
+								}
+
+
+								picker.dismiss(animated: true) {
+
+								}
+				}
+}

--
Gitblit v1.7.1