OrderDetailContactAddressTableViewCell.swift 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. //
  2. // OrderDetailContactAddressTableViewCell.swift
  3. // RainbowPlanet
  4. //
  5. // Created by 南鑫林 on 2019/5/16.
  6. // Copyright © 2019 RainbowPlanet. All rights reserved.
  7. //
  8. import UIKit
  9. class OrderDetailContactAddressTableViewCell: UITableViewCell {
  10. class func cellWith(tableView:UITableView,indexPath:IndexPath) -> OrderDetailContactAddressTableViewCell {
  11. let ID = "OrderDetailContactAddressTableViewCell"
  12. tableView.register(OrderDetailContactAddressTableViewCell.self, forCellReuseIdentifier: ID)
  13. let cell : OrderDetailContactAddressTableViewCell = tableView.dequeueReusableCell(withIdentifier: ID, for: indexPath) as! OrderDetailContactAddressTableViewCell
  14. cell.indexPath = indexPath
  15. return cell
  16. }
  17. override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
  18. super.init(style: style, reuseIdentifier: reuseIdentifier)
  19. setupViews()
  20. setupLayouts()
  21. }
  22. required init?(coder aDecoder: NSCoder) {
  23. fatalError("init(coder:) has not been implemented")
  24. }
  25. var indexPath: IndexPath? {
  26. didSet {
  27. }
  28. }
  29. //MRAK: - 设置View
  30. private func setupViews() {
  31. self.selectionStyle = .none
  32. addSubview(addressImageView)
  33. addSubview(contactLabel)
  34. addSubview(addressTitleLabel)
  35. addSubview(addressContentLabel)
  36. }
  37. private func setupLayouts() {
  38. addressImageView.snp.makeConstraints { (make) in
  39. make.top.left.equalTo(14)
  40. make.size.equalTo(16)
  41. }
  42. contactLabel.snp.makeConstraints { (make) in
  43. make.centerY.equalTo(addressImageView)
  44. make.left.equalTo(addressImageView.snp.right).offset(14)
  45. make.right.equalTo(-14)
  46. make.height.equalTo(21)
  47. }
  48. addressTitleLabel.snp.remakeConstraints { (make) in
  49. make.top.equalTo(contactLabel.snp.bottom).offset(8)
  50. make.left.equalTo(contactLabel)
  51. make.width.greaterThanOrEqualTo(10)
  52. }
  53. addressContentLabel.snp.makeConstraints { (make) in
  54. make.top.equalTo(addressTitleLabel)
  55. make.left.equalTo(addressTitleLabel.snp.right)
  56. make.right.bottom.equalTo(-14)
  57. }
  58. }
  59. private lazy var addressImageView: UIImageView = {
  60. let addressImageView = UIImageView()
  61. addressImageView.image = kImage(name: "order_coord")
  62. return addressImageView
  63. }()
  64. private lazy var contactLabel: UILabel = {
  65. let contactLabel = UILabel()
  66. contactLabel.textColor = k333333Color
  67. contactLabel.font = kBoldFont15
  68. return contactLabel
  69. }()
  70. private lazy var addressTitleLabel: UILabel = {
  71. let addressTitleLabel = UILabel()
  72. addressTitleLabel.textColor = k666666Color
  73. addressTitleLabel.font = kRegularFont13
  74. return addressTitleLabel
  75. }()
  76. private lazy var addressContentLabel: UILabel = {
  77. let addressContentLabel = UILabel()
  78. addressContentLabel.textColor = k666666Color
  79. addressContentLabel.font = kRegularFont13
  80. return addressContentLabel
  81. }()
  82. var orderModel: OrderModel? {
  83. didSet {
  84. if orderModel?.deliverType == 1 { //自提
  85. addressTitleLabel.text = "自提地址:"
  86. }else { //快递
  87. addressTitleLabel.text = "快递地址:"
  88. }
  89. contactLabel.text = "\(orderModel?.name ?? "") \(orderModel?.mobile ?? "")"
  90. addressContentLabel.text = orderModel?.address
  91. }
  92. }
  93. }