-
1.自定义一个VisitorView 的UIView来展示未登录的情况
// 定义一个变量保存当前用户是否登录 var userLogin = false override func loadView() { userLogin ? super.loadView() : setViewUp() } // MARK: 内部控制方法 /* * 创建未登录界面 */ 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创建该类,那么就会崩溃 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创建该类,那么就会崩溃
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
}()
}