Blame view
App/commons/CellMucChupWithCamera.swift
3.7 KB
1341bf603
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 |
import Foundation import UIKit import GeneralUtils class CellMucChupWithCamera: BaseTableViewCellUI { var tvTitle: UILabel!, imv: UIImageView! var mucChup: ShootItem! static func registerClass(tableView: UITableView, forCellReuseIdentifier: String) { tableView.register(CellMucChupWithCamera.self, forCellReuseIdentifier: forCellReuseIdentifier) } override init(style: UITableViewCellStyle, reuseIdentifier: String?) { super.init(style: style, reuseIdentifier: reuseIdentifier) initView() } required init?(coder aDecoder: NSCoder) { super.init(coder: aDecoder) initView() } private func initView() { let stackView = UIStackView() stackView.axis = UILayoutConstraintAxis.horizontal stackView.translatesAutoresizingMaskIntoConstraints = false self.contentView.addSubview(stackView) NSLayoutConstraint.activate([stackView.topAnchor.constraint(equalTo: contentView.topAnchor, constant: 8), stackView.leftAnchor.constraint(equalTo: contentView.leftAnchor, constant: 8), stackView.rightAnchor.constraint(equalTo: contentView.rightAnchor, constant: -8), stackView.bottomAnchor.constraint(equalTo: contentView.bottomAnchor, constant: -8)]) tvTitle = UILabel() tvTitle.numberOfLines = 0 stackView.addArrangedSubview(tvTitle) tvTitle.isUserInteractionEnabled = true let tapTitle = UITapGestureRecognizer(target: self, action: #selector(CellMucChupWithCamera.titleClick)) tvTitle.addGestureRecognizer(tapTitle) imv = UIImageView() imv.contentMode = .scaleAspectFit imv.isUserInteractionEnabled = true stackView.addArrangedSubview(imv) imv.widthAnchor.constraint(equalToConstant: 80).isActive = true imv.heightAnchor.constraint(equalToConstant: 60).isActive = true imv.image = #imageLiteral(resourceName:"camera_black_ic").imageWithInsets(insetDimen: 10) ?? #imageLiteral(resourceName:"camera_black_ic") let tap = UITapGestureRecognizer(target: self, action: #selector(CellMucChupWithCamera.btnImvClick)) imv.addGestureRecognizer(tap) } func titleClick() { guard let viewController = self.viewController else { return } if viewController is VCConfirmMucDaChon { return } var imgObjs = [ImgObj]() var imgObj = ImgObj() imgObj.url = "http://thosonnha.nhq.vn/wp-content/uploads/2015/05/son-lot-tuong.jpg" imgObjs.append(imgObj) imgObj = ImgObj() imgObj.url = "http://media.vietq.vn/files/meo-tay-vet-ban-tren-tuong-1.jpg" imgObjs.append(imgObj) imgObj = ImgObj() imgObj.url = "http://file1.batdongsan.com.vn/file.396375.jpg" imgObjs.append(imgObj) VCPageImgs.openController(viewController, imgObjs: imgObjs) } func btnImvClick() { guard let viewController = self.viewController else { return } if viewController is VCConfirmMucDaChon { return } let cameraViewController = CameraViewController(croppingEnabled: false, allowsLibraryAccess: true) { [weak viewController, weak self] image, asset in viewController?.dismiss(animated: true, completion: nil) guard let image = image else { return } self?.imv?.image = image //TODO save image } viewController.present(cameraViewController, animated: true, completion: nil) } override func configCellWithData(baseObj: Any, index: Int) { super.configCellWithData(baseObj: baseObj, index: index) mucChup = baseObj as! ShootItem tvTitle.text = mucChup.name } } |