-
1.自定義一個VisitorView 的UIView來展示未登錄的情況
// 定義一個變量保存當前用戶是否登錄 var userLogin = false override func loadView() { userLogin ? super.loadView() : setViewUp() } // MARK: 內(nèi)部控制方法 /* * 創(chuàng)建未登錄界面 */ private func setViewUp(){ print("哈哈") let customView = VisitorView() customView.backgroundColor = UIColor.JKGlobalColor() view = customView }
-
重寫View 的一些設置(一定要寫上兩個方法)
下面的兩個方法 override init(frame: CGRect) { super.init(frame: frame) } // swift推薦我們自定義一個控件,要么用純代碼,要么用xib或者stroyboard required init?(coder aDecoder: NSCoder) { // 如果通過xib或者stroyboard創(chuàng)建該類,那么就會崩潰 fatalError("init(coder:) has not been implemented") }
-
具體的重寫view里面的
import UIKit
class VisitorView: UIView {
override init(frame: CGRect) {
super.init(frame: frame)
// 1.添加子控件
addSubview(iconView)
addSubview(homeIcob)
addSubview(maskBGView)
addSubview(messageLabel)
addSubview(loginButton)
addSubview(zhuceBtn)
// 2.0布局子控件
// 2.1.設置背景圈圈
iconView.centerX = JKscreenW/2.0
iconView.centerY = JKscreenH/2.0
// 2.2.設置中間的小房子
homeIcob.centerX = JKscreenW/2.0
homeIcob.centerY = JKscreenH/2.0
// 2.3.設置文本
messageLabel.y = iconView.frame.maxY + 10
messageLabel.centerX = JKscreenW/2.0
// 2.4.設置按鈕
zhuceBtn.x = messageLabel.x
zhuceBtn.y = messageLabel.frame.maxY + 10
loginButton.x = messageLabel.frame.maxX - 100
loginButton.y = messageLabel.frame.maxY + 10
// 2.5.設置蒙版
maskBGView.centerX = JKscreenW/2.0
maskBGView.centerY = JKscreenH/2.0
}
// swift推薦我們自定義一個控件,要么用純代碼,要么用xib或者stroyboard
required init?(coder aDecoder: NSCoder) {
// 如果通過xib或者stroyboard創(chuàng)建該類,那么就會崩潰
fatalError("init(coder:) has not been implemented")
}
// MARK: 懶加載一些控件
// 轉盤
private lazy var iconView: UIImageView = {
let iv = UIImageView(image: UIImage(named: "visitordiscover_feed_image_smallicon"))
return iv
}()
// 圖標
private lazy var homeIcob: UIImageView = {
let iv = UIImageView(image: UIImage(named: "visitordiscover_feed_image_house"))
return iv
}()
// 文本
private lazy var messageLabel: UILabel = {
let label = UILabel()
label.height = NSString.JKtextStringHeight(string:"三月,醉一場青春的流年。慢步在三月的春光里,走走停停,看花開嫣然,看春雨綿綿,感受春風拂面,春天,就是青春的流年。", size: CGSize(width:224,height:1000), fontSize: 14)
label.width = 224
label.font = UIFont.systemFont(ofSize: 14)
label.numberOfLines = 0
label.textAlignment = NSTextAlignment.center
label.textColor = UIColor.JKTextGayColor()
label.text = "三月,醉一場青春的流年。慢步在三月的春光里,走走停停,看花開嫣然,看春雨綿綿,感受春風拂面,春天,就是青春的流年。"
return label
}()
// 登錄按鈕
private lazy var loginButton: UIButton = {
let login = UIButton()
login.width = 100
login.height = 30
login.setTitleColor(UIColor.JKTextGayColor(), for: UIControlState.normal)
login.setTitle("登錄", for: UIControlState.normal)
login.setBackgroundImage(UIImage(named: "common_button_white_disable"), for: UIControlState.normal)
return login
}()
// 注冊按鈕
private lazy var zhuceBtn: UIButton = {
let zhuce = UIButton()
zhuce.width = 100
zhuce.height = 30
zhuce.setTitleColor(UIColor.orange, for: UIControlState.normal)
zhuce.setTitle("注冊", for: UIControlState.normal)
zhuce.setBackgroundImage(UIImage(named: "common_button_white_disable"), for: UIControlState.normal)
return zhuce
}()
// 蒙版的添加
private lazy var maskBGView: UIImageView = {
// UIImageView 的初始化
let maskbgView = UIImageView(image: UIImage(named:"visitordiscover_feed_mask_smallicon"))
// UIImageView 的frame
// maskbgView.frame = CGRect(x:10,y:10,width:100,height:100)
// UIImageView 的圖片填充方式
maskbgView.contentMode = UIViewContentMode.scaleAspectFill
return maskbgView
}()
}