Commit f3669652 authored by David黄金龙's avatar David黄金龙

组件封装

parent 3099554a
This diff is collapsed.
......@@ -59,14 +59,14 @@ extension YHBasicInfoFillCell {
make.bottom.equalToSuperview()
}
let sessionView = YHPreviewInfoTitleView()
let sessionView = YHPreviewInfoSingleLineTitleView()
sessionView.updateTitle(title: dataModel.sessionTitle)
holdView1.addSubview(sessionView)
sessionView.snp.makeConstraints { make in
make.top.equalToSuperview()
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
make.height.equalTo(YHPreviewInfoTitleView.viewH)
make.height.equalTo(YHPreviewInfoSingleLineTitleView.viewH)
}
......
......@@ -13,6 +13,7 @@ enum YHPreviewInfoSessionModelType: Int {
case countryInfoType = 0 //0-国籍信息 类型
case idCardInfoType = 1 //1-证件信息 类型
case idPictureType = 2 //2-证件照片 类型
case questionAndAnswer = 3 //3-问答 类型
}
......
......@@ -51,190 +51,37 @@ extension YHPreviewInfoCell {
if model?.cellType == .countryInfoType {
guard let model = model else { return }
guard let arrData = model.cellData0,arrData.count > 0 else { return }
let sessionView = YHPreviewInfoTitleView()
sessionView.updateTitle(title: model.cellTitle)
holdView.addSubview(sessionView)
sessionView.snp.makeConstraints { make in
make.top.equalToSuperview()
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
make.height.equalTo(YHPreviewInfoTitleView.viewH)
}
if arrData.count == 1 {
let item = arrData[0]
let cellView = YHPreviewInfoNameAndSubNameView()
cellView.update(title: item.name, subtitle: item.description)
holdView.addSubview(cellView)
cellView.snp.makeConstraints { make in
make.top.equalTo(sessionView.snp.bottom)
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
make.bottom.equalToSuperview().offset(-21)
}
} else {
var tmp : UIView = sessionView
for(index,item) in arrData.enumerated() {
let cellView = YHPreviewInfoNameAndSubNameView()
cellView.update(title: item.name, subtitle: item.description)
holdView.addSubview(cellView)
if index == arrData.count - 1 {
cellView.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom)
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
make.bottom.equalToSuperview().offset(-21)
}
} else {
cellView.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom)
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
}
}
tmp = cellView
}
let view = YHPreviewInfoQuestionAndAnswerItemsView(frame: .zero)
view.dataModel = model
holdView.addSubview(view)
view.snp.makeConstraints { make in
make.edges.equalTo(0)
}
}
else if model?.cellType == .idCardInfoType {
guard let model = model else { return }
guard let arrData = model.cellData1,arrData.count > 0 else { return }
let sessionView = YHPreviewInfoTitleView()
sessionView.updateTitle(title: model.cellTitle)
holdView.addSubview(sessionView)
sessionView.snp.makeConstraints { make in
make.top.equalToSuperview()
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
make.height.equalTo(YHPreviewInfoTitleView.viewH)
}
var tmp : UIView = sessionView
for (index0,item0) in arrData.enumerated() {
let lable = UILabel()
lable.text = item0.cellTitle
lable.textColor = UIColor.mainTextColor
lable.font = UIFont.PFSC_M(ofSize: 14)
holdView.addSubview(lable)
lable.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom).offset(18)
make.left.equalTo(18)
make.right.equalTo(-18)
make.height.equalTo(17)
}
tmp = lable
let arrData0 = item0.cellData
if arrData0.count > 0 {
for(index,item) in arrData0.enumerated() {
let cellView = YHPreviewInfoNameAndSubNameView()
cellView.update(title: item.name, subtitle: item.description)
holdView.addSubview(cellView)
if index == 0 {
//第一个
cellView.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom).offset(10) //for test hjl
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
}
} else if index == arrData0.count - 1 {
//最后一个
if index0 == arrData.count - 1 {
//最后一个cell
cellView.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom)
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
make.bottom.equalToSuperview().offset(-21)
}
} else {
cellView.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom)
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
}
let bottomLine = UIView()
bottomLine.backgroundColor = UIColor(hex: 0xF0F0F0)
holdView.addSubview(bottomLine)
bottomLine.snp.makeConstraints { make in
make.top.equalTo(cellView.snp.bottom).offset(28)
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
make.height.equalTo(0.5)
}
tmp = bottomLine
continue
}
} else {
//中间
cellView.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom)
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
}
}
tmp = cellView
}
}
let view = YHPreviewInfoCertificateInformationItemsView(frame: .zero)
view.dataModel = model
holdView.addSubview(view)
view.snp.makeConstraints { make in
make.edges.equalTo(0)
}
}
else if model?.cellType == .idPictureType {
guard let model = model else { return }
guard let arrData = model.cellData2,arrData.count > 0 else { return }
let sessionView = YHPreviewInfoTitleView()
sessionView.updateTitle(title: model.cellTitle)
holdView.addSubview(sessionView)
sessionView.snp.makeConstraints { make in
make.top.equalToSuperview()
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
make.height.equalTo(YHPreviewInfoTitleView.viewH)
}
var tmp : UIView = sessionView
for (index0,item0) in arrData.enumerated() {
let view = YHPersonInfoIdentificationCardView()
view.dataModel = item0
guard let model = model else { return }
let view = YHPreviewInfoCertificatePictureItemsView(frame: .zero)
view.dataModel = model
holdView.addSubview(view)
if index0 == arrData.count - 1 {
view.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom)
make.right.equalToSuperview()
make.left.equalToSuperview()
make.bottom.equalToSuperview()
view.bottomLine.isHidden = true
}
} else {
view.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom)
make.right.equalToSuperview()
make.left.equalToSuperview()
make.edges.equalTo(0)
}
view.bottomLine.isHidden = false
}
tmp = view
}
else if model?.cellType == .questionAndAnswer {
}
else {
......
//
// YHPreviewInfoCertificateInformationItemsView.swift
// galaxy
//
// Created by davidhuangA on 2024/2/25.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
/*
*证件信息 类型 view
*/
class YHPreviewInfoCertificateInformationItemsView: UIView {
var dataModel : YHPreviewInfoSessionModel? {
didSet {
updateUI()
}
}
}
extension YHPreviewInfoCertificateInformationItemsView {
func updateUI() {
guard let model = dataModel else { return }
guard let arrData = model.cellData1,arrData.count > 0 else { return }
let sessionView = YHPreviewInfoSingleLineTitleView()
sessionView.updateTitle(title: model.cellTitle)
addSubview(sessionView)
sessionView.snp.makeConstraints { make in
make.top.equalToSuperview()
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
make.height.equalTo(YHPreviewInfoSingleLineTitleView.viewH)
}
var tmp : UIView = sessionView
for (index0,item0) in arrData.enumerated() {
let lable = UILabel()
lable.text = item0.cellTitle
lable.textColor = UIColor.mainTextColor
lable.font = UIFont.PFSC_M(ofSize: 14)
addSubview(lable)
lable.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom).offset(18)
make.left.equalTo(18)
make.right.equalTo(-18)
make.height.equalTo(17)
}
tmp = lable
let arrData0 = item0.cellData
if arrData0.count > 0 {
for(index,item) in arrData0.enumerated() {
let cellView = YHPreviewInfoNameAndSubNameItemView()
cellView.update(title: item.name, subtitle: item.description)
addSubview(cellView)
if index == 0 {
//第一个
cellView.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom).offset(10) //for test hjl
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
}
} else if index == arrData0.count - 1 {
//最后一个
if index0 == arrData.count - 1 {
//最后一个cell
cellView.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom)
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
make.bottom.equalToSuperview().offset(-21)
}
} else {
cellView.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom)
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
}
let bottomLine = UIView()
bottomLine.backgroundColor = UIColor(hex: 0xF0F0F0)
addSubview(bottomLine)
bottomLine.snp.makeConstraints { make in
make.top.equalTo(cellView.snp.bottom).offset(28)
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
make.height.equalTo(0.5)
}
tmp = bottomLine
continue
}
} else {
//中间
cellView.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom)
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
}
}
tmp = cellView
}
}
}
}
}
......@@ -8,7 +8,7 @@
import UIKit
class YHPersonInfoIdentificationCardView: UIView {
class YHPreviewInfoCertificatePictureItemView: UIView {
var dataModel : YHPersonInfoCellModel2? {
didSet {
......@@ -25,7 +25,7 @@ class YHPersonInfoIdentificationCardView: UIView {
fatalError("init(coder:) has not been implemented")
}
private lazy var titleLable : UILabel = {
private lazy var cellTitleLable : UILabel = {
let lable = UILabel()
lable.textColor = UIColor.mainTextColor
lable.font = UIFont.PFSC_M(ofSize: 14)
......@@ -53,7 +53,7 @@ class YHPersonInfoIdentificationCardView: UIView {
}()
private lazy var subtitleFrontLable : UILabel = {
private lazy var frontLable : UILabel = {
let lable = UILabel()
lable.textColor = UIColor.labelTextColor2
lable.font = UIFont.PFSC_R(ofSize: 14)
......@@ -63,7 +63,7 @@ class YHPersonInfoIdentificationCardView: UIView {
}()
private lazy var subtitleBackLable : UILabel = {
private lazy var backLable : UILabel = {
let lable = UILabel()
lable.textColor = UIColor.labelTextColor2
lable.font = UIFont.PFSC_R(ofSize: 14)
......@@ -81,10 +81,10 @@ class YHPersonInfoIdentificationCardView: UIView {
}
extension YHPersonInfoIdentificationCardView {
extension YHPreviewInfoCertificatePictureItemView {
func setupUI() {
addSubview(titleLable)
titleLable.snp.makeConstraints { make in
addSubview(cellTitleLable)
cellTitleLable.snp.makeConstraints { make in
make.top.equalTo(18)
make.left.equalTo(18)
make.right.equalTo(-18)
......@@ -92,27 +92,27 @@ extension YHPersonInfoIdentificationCardView {
}
addSubview(subtitleFrontLable)
subtitleFrontLable.snp.makeConstraints { make in
make.top.equalTo(titleLable.snp.bottom).offset(18)
addSubview(frontLable)
frontLable.snp.makeConstraints { make in
make.top.equalTo(cellTitleLable.snp.bottom).offset(18)
make.height.equalTo(20)
make.left.equalTo(titleLable.snp.left)
make.left.equalTo(cellTitleLable.snp.left)
make.right.equalTo(self.snp.centerX).offset(-4)
}
addSubview(frontImagV)
frontImagV.snp.makeConstraints { make in
make.top.equalTo(subtitleFrontLable.snp.bottom).offset(11)
make.top.equalTo(frontLable.snp.bottom).offset(11)
make.height.equalTo(95)
make.left.equalTo(subtitleFrontLable.snp.left)
make.right.equalTo(subtitleFrontLable.snp.right)
make.left.equalTo(frontLable.snp.left)
make.right.equalTo(frontLable.snp.right)
}
addSubview(subtitleBackLable)
subtitleBackLable.snp.makeConstraints { make in
make.top.equalTo(subtitleFrontLable.snp.top)
addSubview(backLable)
backLable.snp.makeConstraints { make in
make.top.equalTo(frontLable.snp.top)
make.height.equalTo(20)
make.right.equalTo(-18)
make.left.equalTo(self.snp.centerX).offset(4)
......@@ -121,10 +121,10 @@ extension YHPersonInfoIdentificationCardView {
addSubview(backImagV)
backImagV.snp.makeConstraints { make in
make.top.equalTo(subtitleBackLable.snp.bottom).offset(11)
make.top.equalTo(backLable.snp.bottom).offset(11)
make.height.equalTo(95)
make.left.equalTo(subtitleBackLable.snp.left)
make.right.equalTo(subtitleBackLable.snp.right)
make.left.equalTo(backLable.snp.left)
make.right.equalTo(backLable.snp.right)
}
......@@ -141,12 +141,12 @@ extension YHPersonInfoIdentificationCardView {
}
extension YHPersonInfoIdentificationCardView {
extension YHPreviewInfoCertificatePictureItemView {
func updateUI() {
guard let dataModel = dataModel else { return }
titleLable.text = dataModel.cellTitle
subtitleFrontLable.text = dataModel.idType == 1 ? "身份证头像面" : "港澳通行证正面"
subtitleBackLable.text = dataModel.idType == 1 ? "身份证国徽面" : "港澳通行证反面"
cellTitleLable.text = dataModel.cellTitle
frontLable.text = dataModel.idType == 1 ? "身份证头像面" : "港澳通行证正面"
backLable.text = dataModel.idType == 1 ? "身份证国徽面" : "港澳通行证反面"
}
}
......
//
// YHPreviewInfoCertificatePictureItemsView.swift
// galaxy
//
// Created by davidhuangA on 2024/2/25.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
/*
*证件照片 类型 view
*/
class YHPreviewInfoCertificatePictureItemsView: UIView {
var dataModel : YHPreviewInfoSessionModel? {
didSet {
updateUI()
}
}
}
extension YHPreviewInfoCertificatePictureItemsView {
func updateUI() {
guard let model = dataModel else { return }
guard let arrData = model.cellData2,arrData.count > 0 else { return }
let sessionView = YHPreviewInfoSingleLineTitleView()
sessionView.updateTitle(title: model.cellTitle)
addSubview(sessionView)
sessionView.snp.makeConstraints { make in
make.top.equalToSuperview()
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
make.height.equalTo(YHPreviewInfoSingleLineTitleView.viewH)
}
var tmp : UIView = sessionView
for (index0,item0) in arrData.enumerated() {
let view = YHPreviewInfoCertificatePictureItemView()
view.dataModel = item0
addSubview(view)
if index0 == arrData.count - 1 {
view.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom)
make.right.equalToSuperview()
make.left.equalToSuperview()
make.bottom.equalToSuperview()
view.bottomLine.isHidden = true
}
} else {
view.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom)
make.right.equalToSuperview()
make.left.equalToSuperview()
}
view.bottomLine.isHidden = false
}
tmp = view
}
}
}
......@@ -7,7 +7,7 @@
//
import UIKit
class YHPreviewInfoNameAndSubNameView: UIView {
class YHPreviewInfoNameAndSubNameItemView: UIView {
override init(frame: CGRect) {
super.init(frame: frame)
setupUI()
......@@ -60,7 +60,7 @@ class YHPreviewInfoNameAndSubNameView: UIView {
}
}
extension YHPreviewInfoNameAndSubNameView {
extension YHPreviewInfoNameAndSubNameItemView {
func update(title : String,subtitle : String) {
nameLable.text = title
subtitleLable.text = subtitle
......
//
// YHPreviewInfoNameAndSubNameItemsView.swift
// galaxy
//
// Created by davidhuangA on 2024/2/25.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHPreviewInfoNameAndSubNameItemsView: UIView {
}
......@@ -8,7 +8,7 @@
import UIKit
class YHPreviewInfoQuestionAndAnswerView: UIView {
class YHPreviewInfoQuestionAndAnswerItemView: UIView {
override init(frame: CGRect) {
super.init(frame: frame)
setupUI()
......@@ -23,20 +23,36 @@ class YHPreviewInfoQuestionAndAnswerView: UIView {
let lable0 = UILabel(text: "--")
lable0.textColor = UIColor.labelTextColor2
lable0.font = UIFont.PFSC_R(ofSize: 14)
// lable0.numberOfLines = 1
// lable0.lineBreakMode = .byCharWrapping
lable0.numberOfLines = 0
lable0.lineBreakMode = .byCharWrapping
return lable0
}()
//title
//subtitleLable
private lazy var subtitleLable : UILabel = {
let lable0 = UILabel(text: "--")
lable0.textColor = UIColor.mainTextColor
lable0.font = UIFont.PFSC_R(ofSize: 14)
lable0.numberOfLines = 0
lable0.lineBreakMode = .byWordWrapping
lable0.textAlignment = .right
// lable0.textAlignment = .right
return lable0
}()
private lazy var remarkTextField : UITextView = {
let lable0 = UITextView(frame: .zero)
lable0.contentInset = UIEdgeInsets(top: 12, left: 12, bottom: 12, right: 12)
lable0.textColor = UIColor.labelTextColor2
lable0.font = UIFont.PFSC_R(ofSize: 14)
lable0.backgroundColor = .contentBkgColor
lable0.layer.cornerRadius = kCornerRadius6
lable0.clipsToBounds = true
lable0.isEditable = false
lable0.isSelectable = false
lable0.isScrollEnabled = false
lable0.text = "我是测试数据哈"
lable0.isHidden = true
return lable0
}()
......@@ -45,23 +61,34 @@ class YHPreviewInfoQuestionAndAnswerView: UIView {
nameLable.snp.makeConstraints { make in
make.top.equalToSuperview().offset(18)
make.left.equalToSuperview()
make.width.lessThanOrEqualTo(154)
make.right.equalToSuperview()
make.height.equalTo(20)
}
nameLable.setContentCompressionResistancePriority(.required, for: .horizontal)
// nameLable.setContentCompressionResistancePriority(.required, for: .horizontal)
addSubview(subtitleLable)
subtitleLable.snp.makeConstraints { make in
make.top.equalTo(nameLable.snp.top)
make.top.equalTo(nameLable.snp.bottom).offset(8)
make.right.equalToSuperview()
make.left.equalTo(nameLable.snp.right).offset(10)
make.left.equalToSuperview()
make.bottom.equalToSuperview()
make.bottom.equalToSuperview().offset(-18)
}
// addSubview(remarkTextField)
// remarkTextField.snp.makeConstraints { make in
// make.top.equalTo(subtitleLable.snp.bottom).offset(8)
// make.right.equalToSuperview()
// make.left.equalToSuperview()
//
// make.bottom.equalToSuperview().offset(-18)
// }
}
}
extension YHPreviewInfoQuestionAndAnswerView {
extension YHPreviewInfoQuestionAndAnswerItemView {
func update(title : String,subtitle : String) {
nameLable.text = title
subtitleLable.text = subtitle
......
//
// YHPreviewInfoQuestionAndAnswerItemsView.swift
// galaxy
//
// Created by davidhuangA on 2024/2/25.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHPreviewInfoQuestionAndAnswerItemsView: UIView {
var dataModel : YHPreviewInfoSessionModel? {
didSet {
updateUI()
}
}
}
extension YHPreviewInfoQuestionAndAnswerItemsView {
func updateUI() {
guard let model = dataModel else { return }
guard let arrData = model.cellData0,arrData.count > 0 else { return }
let sessionView = YHPreviewInfoSingleLineTitleView()
sessionView.updateTitle(title: model.cellTitle)
addSubview(sessionView)
sessionView.snp.makeConstraints { make in
make.top.equalToSuperview()
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
make.height.equalTo(YHPreviewInfoSingleLineTitleView.viewH)
}
if arrData.count == 1 {
let item = arrData[0]
let cellView = YHPreviewInfoNameAndSubNameItemView()
cellView.update(title: item.name, subtitle: item.description)
addSubview(cellView)
cellView.snp.makeConstraints { make in
make.top.equalTo(sessionView.snp.bottom)
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
make.bottom.equalToSuperview().offset(-21)
}
} else {
var tmp : UIView = sessionView
for(index,item) in arrData.enumerated() {
let cellView = YHPreviewInfoNameAndSubNameItemView()
cellView.update(title: item.name, subtitle: item.description)
addSubview(cellView)
if index == arrData.count - 1 {
cellView.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom)
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
make.bottom.equalToSuperview().offset(-21)
}
} else {
cellView.snp.makeConstraints { make in
make.top.equalTo(tmp.snp.bottom)
make.right.equalToSuperview().offset(-18)
make.left.equalToSuperview().offset(18)
}
}
tmp = cellView
}
}
}
}
......@@ -8,7 +8,7 @@
import UIKit
class YHPreviewInfoTitleView: UIView {
class YHPreviewInfoSingleLineTitleView: UIView {
static let viewH : CGFloat = 52
override init(frame: CGRect) {
super.init(frame: frame)
......@@ -49,7 +49,7 @@ class YHPreviewInfoTitleView: UIView {
}
}
extension YHPreviewInfoTitleView {
extension YHPreviewInfoSingleLineTitleView {
func updateTitle(title : String) {
nameLable.text = title
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment