标题栏实现效果
实现逻辑
自定义标题栏,我们可以基于系统NavigationBar定制,也可以使用控件完全自定义。本文使用控件完全自定义来实现自定义标题栏效果。
SuperToolbarView
创建一个自定义控件SuperToolbarView,可以把SuperToolbarView分成左中右三个部分;创建左中右布局,添加到SuperToolbarView中;对外提供相应的方法,将添加到左中右布局的方法暴露出去,最后将SuperToolbarView添加到界面。
1)SuperToolbarView继承自TGRelativeLayout布局
class SuperToolbarView : TGRelativeLayout{
}
2)初始化SuperToolbarView,必须要重写required init?(coder: NSCoder) {},便于在可视化布局中使用。
class SuperToolbarView : TGRelativeLayout{
init() {
super.init(frame: CGRect.zero)
initViews()
}
required init?(coder: NSCoder) {
super.init(coder: coder)
initViews()
}
func initViews(){
}
}
3)使用懒加载创建左中右和标题布局
class SuperToolbarView : TGRelativeLayout{
init() {
super.init(frame: CGRect.zero)
initViews()
}
required init?(coder: NSCoder) {
super.init(coder: coder)
initViews()
}
func initViews(){
}
lazy var leftContainer: TGLinearLayout = {
let r = TGLinearLayout(.horz)
r.tg_space = PADDING_MEDDLE
r.tg_gravity = TGGravity.vert.center
r.tg_leading.equal(12)
r.tg_trailing.equal(centerContainer.tg_leading).offset(PADDING_MEDDLE)
r.tg_height.equal(.fill)
return r
}()
lazy var centerContainer: TGLinearLayout = {
let r = TGLinearLayout(.horz)
r.tg_width.equal(.wrap)
r.tg_height.equal(.fill)
r.tg_gravity = TGGravity.vert.center
r.tg_centerX.equal(0)
r.tg_centerY.equal(0)
return r
}()
private lazy var rightContainer: TGLinearLayout = {
let r = TGLinearLa
- 有双修要素的仙侠游戏大全类似夜店之王的游戏大全 2024-12-07 进入专题 和对象玩一整天的升温游戏大全 2024-12-07 进入专题 可以娶妻生子的三国游戏合集 2024-12-07 进入专题 ...
- dnf刷85碎片,DNF85级史诗武器哪里暴?1、DNF85级史诗武器哪里暴?DNF各职业85SS武器爆率一览 中心深渊:85SS爆率2%,90SS爆率1%;一起3%;188PL47次深渊平均是3个左右的SS。 天丛云是DNF中...
- 一些注意事项一定保证准备活动质量,坚决杜绝形式化做操。 活动过程中尤其关注低血糖、抽筋、呕吐等问题,教练员要注意力高度集中。 下水前需要和学...
- 掌握这几种方法,轻松去除小影视频水印,让创作更自由!掌握这几种方法,轻松去除小影视频水印,让创作更自由! 2024-07-09 11:15 针对如何去除小影视频中的水印问题,我们可以采取以下几种方法,每...
- 卡卡贷审批要多久卡卡贷的审批时间主要取决于申请人的资料提交情况、申请时间以及系统的处理速度。以下是一些具体的参考数据: 快速审核在资料齐全且真实...
- 微弱的意思拼音wēi ruò 1.微弱常用意思: 又小又弱;能量很小。 词性形容词 近义词 弱小 反义词 强大 , 强烈 , 猛烈 , 剧烈 例句 1.那只雄狮身受重伤,气息...
- 最近单位要求上交护照,基层公务员也要上交护照吗?可以出国吗?可以兼职赚外快吗?但是,对于基层公务员来说,能不能出国玩并不算什么头疼的事,而是有没有足够的钱可以出国玩....那么就联系到下一个话题....公务员可以简...
- 巴西大名单号码公布:内马尔10号,理查利森9号巴西国家队公布球队世界杯号码,内马尔身披10号,维尼修斯20号、理查利森9号。 球员完整号码如下: 门将:1-阿利森(30岁/利物浦)、12-韦弗...
- 垚怎么读音?掌握这个流行语的发音技巧!“垚”的读音是 yáo。 发音技巧: 发音时,舌面中部隆起,接近硬腭,然后留一道窄缝,使气流从中挤出来,同时声带振动,发出清晰的“y”...
- 喜马拉雅开放平台对接海量精彩内容 云剪辑在线音频剪辑神器 主播培训兼职副业,兴趣赚钱 小雅智能智能硬件,连接赋能 车联网平台自在出行,听我想...