|
@@ -7,58 +7,303 @@
|
|
//
|
|
//
|
|
|
|
|
|
import UIKit
|
|
import UIKit
|
|
-import RxSwift
|
|
|
|
|
|
+import EFQRCode
|
|
|
|
|
|
class PublishSuccessController: BaseViewController {
|
|
class PublishSuccessController: BaseViewController {
|
|
|
|
|
|
|
|
+ var imgUrl : String?
|
|
|
|
+ var topicStr : String = ""
|
|
|
|
+ var titleStr : String = ""
|
|
|
|
+ var avatarStr : String?
|
|
|
|
+ var nameStr : String?
|
|
|
|
+ var H5UrlStr : String?
|
|
|
|
+ var bean : Int?
|
|
|
|
+
|
|
|
|
+ var postId : Int?
|
|
|
|
+ var uid : Int?
|
|
|
|
+ var type : String?
|
|
|
|
+ var contentStr : String?
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
override func viewDidLoad() {
|
|
override func viewDidLoad() {
|
|
super.viewDidLoad()
|
|
super.viewDidLoad()
|
|
setupViews()
|
|
setupViews()
|
|
|
|
+ setupLayouts()
|
|
setupData()
|
|
setupData()
|
|
}
|
|
}
|
|
|
|
|
|
override func setupViews() {
|
|
override func setupViews() {
|
|
- self.view.backgroundColor = kffffffColor
|
|
|
|
|
|
|
|
- view.addSubview(shareView)
|
|
|
|
- view.addSubview(iconImageView)
|
|
|
|
|
|
+ statusBarStyle = .lightContent
|
|
|
|
+ navigationBar.barBackgroundColor = UIColor.black
|
|
|
|
+ navigationBar.title = "分享动态卡片"
|
|
|
|
+ navigationBar.titleLabelColor = kffffffColor
|
|
|
|
+ navigationBar.wr_setLeftButton(image: kImage(name: "navbar_back_white")!)
|
|
|
|
+ view.addSubview(shareCommunityContentView)
|
|
|
|
+ view.addSubview(scrollView)
|
|
|
|
+ scrollView.addSubview(bgImageView)
|
|
|
|
+ scrollView.addSubview(bgView)
|
|
|
|
+ bgView.addSubview(logoImageView)
|
|
|
|
+ bgView.addSubview(topicLabel)
|
|
|
|
+ bgView.addSubview(titleLabel)
|
|
|
|
+ bgView.addSubview(lineLable)
|
|
|
|
+ bgView.addSubview(avatarImageView)
|
|
|
|
+ bgView.addSubview(nameLable)
|
|
|
|
+ scrollView.addSubview(lineImageView)
|
|
|
|
+ scrollView.addSubview(QRCodeImageView)
|
|
|
|
+ scrollView.addSubview(nickLable)
|
|
|
|
+ scrollView.addSubview(scanLabel)
|
|
|
|
|
|
- shareView.snp.makeConstraints { (make) in
|
|
|
|
- make.left.right.equalToSuperview()
|
|
|
|
- make.bottom.equalTo(-kSafeTabBarHeight)
|
|
|
|
- make.height.equalTo(185)
|
|
|
|
- }
|
|
|
|
- iconImageView.snp.makeConstraints { (make) in
|
|
|
|
- make.top.left.right.equalToSuperview()
|
|
|
|
- make.bottom.equalTo(shareView.snp_top)
|
|
|
|
- }
|
|
|
|
}
|
|
}
|
|
|
|
|
|
override func setupLayouts() {
|
|
override func setupLayouts() {
|
|
-
|
|
|
|
|
|
+ bgImageView.snp.makeConstraints { (make) in
|
|
|
|
+ make.centerX.equalTo(scrollView)
|
|
|
|
+ make.top.equalTo(scrollView.snp.top)
|
|
|
|
+ make.width.equalTo(kScreenWidth)
|
|
|
|
+ make.height.equalTo(481*kScaleWidth)
|
|
|
|
+ }
|
|
|
|
+ bgView.snp.makeConstraints { (make) in
|
|
|
|
+ make.centerX.equalTo(scrollView)
|
|
|
|
+ make.top.equalTo(scrollView.snp.top)
|
|
|
|
+ make.width.equalTo(kScreenWidth)
|
|
|
|
+ make.height.equalTo(481*kScaleWidth)
|
|
|
|
+ }
|
|
|
|
+ logoImageView.snp.makeConstraints { (make) in
|
|
|
|
+ make.top.equalTo(30*kScaleWidth)
|
|
|
|
+ make.left.equalTo(27*kScaleWidth)
|
|
|
|
+ }
|
|
|
|
+ topicLabel.snp.makeConstraints { (make) in
|
|
|
|
+ make.top.equalTo(logoImageView.snp.bottom).offset(66*kScaleWidth)
|
|
|
|
+ make.left.equalTo(27*kScaleWidth)
|
|
|
|
+ }
|
|
|
|
+ titleLabel.snp.makeConstraints { (make) in
|
|
|
|
+ make.top.equalTo(topicLabel.snp.bottom).offset(15*kScaleWidth)
|
|
|
|
+ make.left.equalTo(27*kScaleWidth)
|
|
|
|
+ make.right.equalTo(-27*kScaleWidth)
|
|
|
|
+ }
|
|
|
|
+ lineLable.snp.makeConstraints { (make) in
|
|
|
|
+ make.top.equalTo(titleLabel.snp.bottom).offset(30*kScaleWidth)
|
|
|
|
+ make.left.equalTo(27*kScaleWidth)
|
|
|
|
+ make.height.equalTo(1)
|
|
|
|
+ make.width.equalTo(20*kScaleWidth)
|
|
|
|
+ }
|
|
|
|
+ avatarImageView.snp.makeConstraints { (make) in
|
|
|
|
+ make.centerY.equalTo(lineLable)
|
|
|
|
+ make.size.equalTo(20*kScaleWidth)
|
|
|
|
+ make.left.equalTo(lineLable.snp.right).offset(5*kScaleWidth)
|
|
|
|
+ }
|
|
|
|
+ nameLable.snp.makeConstraints { (make) in
|
|
|
|
+ make.centerY.equalTo(lineLable)
|
|
|
|
+ make.left.equalTo(avatarImageView.snp.right).offset(5*kScaleWidth)
|
|
|
|
+ }
|
|
|
|
+ lineImageView.snp.makeConstraints { (make) in
|
|
|
|
+ make.top.equalTo(bgView.snp.bottom).offset(10*kScaleWidth)
|
|
|
|
+ make.centerX.equalToSuperview()
|
|
|
|
+ }
|
|
|
|
+ QRCodeImageView.snp.makeConstraints { (make) in
|
|
|
|
+ make.left.equalTo(27*kScaleWidth)
|
|
|
|
+ make.top.equalTo(lineImageView.snp.bottom).offset(40*kScaleWidth)
|
|
|
|
+ make.size.equalTo(90*kScaleWidth)
|
|
|
|
+ }
|
|
|
|
+ nickLable.snp.makeConstraints { (make) in
|
|
|
|
+ make.top.equalTo(QRCodeImageView).offset(7*kScaleWidth)
|
|
|
|
+ make.left.equalTo(QRCodeImageView.snp.right).offset(27*kScaleWidth)
|
|
|
|
+ make.height.equalTo(25*kScaleWidth)
|
|
|
|
+ }
|
|
|
|
+ scanLabel.snp.makeConstraints { (make) in
|
|
|
|
+ make.bottom.equalTo(QRCodeImageView).offset(-7*kScaleWidth)
|
|
|
|
+ make.height.equalTo(34*kScaleWidth)
|
|
|
|
+ make.left.equalTo(QRCodeImageView.snp.right).offset(23*kScaleWidth)
|
|
|
|
+ make.width.equalTo(210*kScaleWidth)
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
override func setupData() {
|
|
override func setupData() {
|
|
|
|
+ bgImageView.kf.setImage(with: kURLImage(name: imgUrl ?? ""), placeholder: kImage(name: "pic_preload"))
|
|
|
|
+ topicLabel.text = "#\(topicStr)#"
|
|
|
|
+ titleLabel.text = titleStr
|
|
|
|
+ avatarImageView.kf.setImage(with: kURLImage(name: avatarStr ?? ""), placeholder: kImage(name: "pic_preload"))
|
|
|
|
+ nameLable.text = nameStr ?? ""
|
|
|
|
+
|
|
|
|
+ if let tryImage = EFQRCode.generate(
|
|
|
|
+ content: H5UrlStr ?? "",
|
|
|
|
+ size: EFIntSize(width: Int(90*kScaleWidth), height: Int(90*kScaleWidth))
|
|
|
|
+ ) {
|
|
|
|
+ QRCodeImageView.image = UIImage(cgImage: tryImage)
|
|
|
|
+ } else {
|
|
|
|
+ }
|
|
|
|
+ scanLabel.text = "扫码查看内容 领取\(bean ?? 0)彩虹豆"
|
|
|
|
+ scrollView.swContentScrollCapture {
|
|
|
|
+ [weak self] (image) in
|
|
|
|
+ self?.shareCommunityContentView.image = image
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ shareCommunityContentView.completion = {
|
|
|
|
+ [weak self] in
|
|
|
|
+ VirusViewModel.shared.forwarVirueRecordAddApi(postId: self?.postId, postAuthorUid: "\(self?.uid ?? 0)", title: self?.titleStr, content: self?.contentStr, postType: self?.type, postCover: self?.imgUrl)
|
|
|
|
+ }
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
- lazy var iconImageView: UIImageView = {
|
|
|
|
- let iconImageView = UIImageView()
|
|
|
|
- iconImageView.image = kImage(name: "pic_example_12")
|
|
|
|
- return iconImageView
|
|
|
|
|
|
+ lazy var scrollView : UIScrollView = {
|
|
|
|
+ let scrollView = UIScrollView(frame: CGRect(x: 0, y: kNavBarTotalHeight, width: kScreenWidth, height: kScreenHeight-kNavBarTotalHeight-152))
|
|
|
|
+ scrollView.contentSize = CGSize(width: kScreenWidth, height: 667*kScaleWidth)
|
|
|
|
+ scrollView.backgroundColor = kffffffColor
|
|
|
|
+ return scrollView
|
|
}()
|
|
}()
|
|
|
|
|
|
- lazy var shareView: PublishShareBottomView = {
|
|
|
|
- let shareView = PublishShareBottomView()
|
|
|
|
-
|
|
|
|
-// shareView.orderPayBlock = {
|
|
|
|
-// [weak self] in
|
|
|
|
-// if let orderPayTransBlock = self?.orderPayTransBlock {
|
|
|
|
-// orderPayTransBlock(self!.selModelArr, self!.totalPrice)
|
|
|
|
-// }
|
|
|
|
-// }
|
|
|
|
-
|
|
|
|
- return shareView
|
|
|
|
|
|
+ lazy var bgImageView: UIImageView = {
|
|
|
|
+ let bgImageView = UIImageView()
|
|
|
|
+ bgImageView.isUserInteractionEnabled = true
|
|
|
|
+ return bgImageView
|
|
|
|
+ }()
|
|
|
|
+
|
|
|
|
+ lazy var bgView: UIView = {
|
|
|
|
+ let bgView = UIView()
|
|
|
|
+ bgView.backgroundColor = UIColor(hexString: "000000", alpha: 0.2)
|
|
|
|
+ bgView.isUserInteractionEnabled = true
|
|
|
|
+ return bgView
|
|
|
|
+ }()
|
|
|
|
+
|
|
|
|
+ lazy var logoImageView: UIImageView = {
|
|
|
|
+ let logoImageView = UIImageView()
|
|
|
|
+ logoImageView.image = kImage(name: "posters_pic_logo")
|
|
|
|
+ logoImageView.isUserInteractionEnabled = true
|
|
|
|
+ return logoImageView
|
|
|
|
+ }()
|
|
|
|
+
|
|
|
|
+ lazy var topicLabel: UILabel = {
|
|
|
|
+ let topicLabel = UILabel()
|
|
|
|
+ topicLabel.textColor = kffffffColor
|
|
|
|
+ topicLabel.font = kRegularFont13
|
|
|
|
+ return topicLabel
|
|
|
|
+ }()
|
|
|
|
+
|
|
|
|
+ lazy var titleLabel: UILabel = {
|
|
|
|
+ let titleLabel = UILabel()
|
|
|
|
+ titleLabel.textColor = kffffffColor
|
|
|
|
+ titleLabel.font = kBoldFont18
|
|
|
|
+ titleLabel.numberOfLines = 2
|
|
|
|
+ return titleLabel
|
|
}()
|
|
}()
|
|
|
|
|
|
|
|
+ lazy var lineLable: UILabel = {
|
|
|
|
+ let lineLable = UILabel()
|
|
|
|
+ lineLable.backgroundColor = UIColor.white
|
|
|
|
+ return lineLable
|
|
|
|
+ }()
|
|
|
|
+
|
|
|
|
+ lazy var avatarImageView: UIImageView = {
|
|
|
|
+ let avatarImageView = UIImageView()
|
|
|
|
+ avatarImageView.cornerRadius = 10 * kScaleWidth
|
|
|
|
+ avatarImageView.masksToBounds = true
|
|
|
|
+ avatarImageView.isUserInteractionEnabled = true
|
|
|
|
+ return avatarImageView
|
|
|
|
+ }()
|
|
|
|
+
|
|
|
|
+ lazy var nameLable: UILabel = {
|
|
|
|
+ let nameLable = UILabel()
|
|
|
|
+ nameLable.textColor = kffffffColor
|
|
|
|
+ nameLable.font = kRegularFont12
|
|
|
|
+ return nameLable
|
|
|
|
+ }()
|
|
|
|
+
|
|
|
|
+ lazy var lineImageView: UIImageView = {
|
|
|
|
+ let lineImageView = UIImageView()
|
|
|
|
+ lineImageView.image = kImage(name: "posters_pic_text")
|
|
|
|
+ lineImageView.isUserInteractionEnabled = true
|
|
|
|
+ return lineImageView
|
|
|
|
+ }()
|
|
|
|
+
|
|
|
|
+ lazy var QRCodeImageView: UIImageView = {
|
|
|
|
+ let QRCodeImageView = UIImageView()
|
|
|
|
+ QRCodeImageView.isUserInteractionEnabled = true
|
|
|
|
+ return QRCodeImageView
|
|
|
|
+ }()
|
|
|
|
+
|
|
|
|
+ lazy var nickLable: UILabel = {
|
|
|
|
+ let nickLable = UILabel()
|
|
|
|
+ nickLable.textColor = k333333Color
|
|
|
|
+ nickLable.font = kMediumFont18
|
|
|
|
+ nickLable.text = "彩虹星球 · 开启美好生活"
|
|
|
|
+ return nickLable
|
|
|
|
+ }()
|
|
|
|
+
|
|
|
|
+ lazy var scanLabel: UILabel = {
|
|
|
|
+ let scanLabel = UILabel()
|
|
|
|
+ scanLabel.textColor = kffffffColor
|
|
|
|
+ scanLabel.font = kMediumFont14
|
|
|
|
+ scanLabel.backgroundColor = kThemeColor
|
|
|
|
+ scanLabel.cornerRadius = 34/2 * kScaleWidth
|
|
|
|
+ scanLabel.masksToBounds = true
|
|
|
|
+ scanLabel.textAlignment = .center
|
|
|
|
+ return scanLabel
|
|
|
|
+ }()
|
|
|
|
+
|
|
|
|
+ lazy var shareCommunityContentView: ShareCommunityContentView = {
|
|
|
|
+ let shareCommunityContentView = ShareCommunityContentView(frame: CGRect(x: 0, y: kScreenHeight - 157, width: kScreenWidth, height: 157))
|
|
|
|
+ return shareCommunityContentView
|
|
|
|
+ }()
|
|
|
|
+
|
|
|
|
+
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+//import UIKit
|
|
|
|
+//import RxSwift
|
|
|
|
+//
|
|
|
|
+//class PublishSuccessController: BaseViewController {
|
|
|
|
+//
|
|
|
|
+// override func viewDidLoad() {
|
|
|
|
+// super.viewDidLoad()
|
|
|
|
+// setupViews()
|
|
|
|
+// setupData()
|
|
|
|
+// }
|
|
|
|
+//
|
|
|
|
+// override func setupViews() {
|
|
|
|
+// self.view.backgroundColor = kffffffColor
|
|
|
|
+//
|
|
|
|
+// view.addSubview(shareView)
|
|
|
|
+// view.addSubview(iconImageView)
|
|
|
|
+//
|
|
|
|
+// shareView.snp.makeConstraints { (make) in
|
|
|
|
+// make.left.right.equalToSuperview()
|
|
|
|
+// make.bottom.equalTo(-kSafeTabBarHeight)
|
|
|
|
+// make.height.equalTo(185)
|
|
|
|
+// }
|
|
|
|
+// iconImageView.snp.makeConstraints { (make) in
|
|
|
|
+// make.top.left.right.equalToSuperview()
|
|
|
|
+// make.bottom.equalTo(shareView.snp_top)
|
|
|
|
+// }
|
|
|
|
+// }
|
|
|
|
+//
|
|
|
|
+// override func setupLayouts() {
|
|
|
|
+//
|
|
|
|
+// }
|
|
|
|
+//
|
|
|
|
+// override func setupData() {
|
|
|
|
+//
|
|
|
|
+// }
|
|
|
|
+//
|
|
|
|
+// lazy var iconImageView: UIImageView = {
|
|
|
|
+// let iconImageView = UIImageView()
|
|
|
|
+// iconImageView.image = kImage(name: "pic_example_12")
|
|
|
|
+// return iconImageView
|
|
|
|
+// }()
|
|
|
|
+//
|
|
|
|
+// lazy var shareView: PublishShareBottomView = {
|
|
|
|
+// let shareView = PublishShareBottomView()
|
|
|
|
+//
|
|
|
|
+//// shareView.orderPayBlock = {
|
|
|
|
+//// [weak self] in
|
|
|
|
+//// if let orderPayTransBlock = self?.orderPayTransBlock {
|
|
|
|
+//// orderPayTransBlock(self!.selModelArr, self!.totalPrice)
|
|
|
|
+//// }
|
|
|
|
+//// }
|
|
|
|
+//
|
|
|
|
+// return shareView
|
|
|
|
+// }()
|
|
|
|
+//
|
|
|
|
+//}
|