,,Navigation bar的注意事项详解

,,Navigation bar的注意事项详解

本文主要介绍了导航栏的注意事项。具有一定的参考价值,下面跟着小编一起来看下吧

条形按钮项目使用按钮作为自定义视图,初始化我已启用为假的,注意顺序

需要设置 bar button item 的 custom view 为 button,但一开始 isEnabled 要为 false。

生成一个按钮

let left button=ui button(frame:CGRect(x:0,y: 0,宽度:80,高度:44))

左键。settitle颜色(用户界面颜色。绿色,用于:正常)

左键。settitle颜色(用户界面颜色。红色,代表:已禁用)

leftButton.setTitle('Enabled ',for:正常)

leftButton.setTitle('Disabled ',用于:已禁用)

leftButton.addTarget(self,action:# selector(单击了左键(_:)),for:touchUpInside)

如果先设置我已启用,后设置条形按钮项目

leftButton.isEnabled=false

导航项目。leftbarbuttonitem=UIBarButtonItem(自定义视图:左按钮)

结果我已启用还是真实的

正确的顺序

导航项目。leftbarbuttonitem=UIBarButtonItem(自定义视图:左按钮)

leftButton.isEnabled=false //或导航项目。leftbarbuttonitem?isEnabled=false

结果我已启用是错误的

改变 navigation bar isTranslucent 属性会改变 view 的坐标

放置两个标签。其中,框架标签没有添加约束(NSLayoutConstraint),约束标签左、右、下都有约束,与视角相接。

设置右上角按钮动作

导航项目。rightbarbuttonitem=UIBarButtonItem(标题:'更改,样式:普通,目标:自身,操作:#选择器(单击了右键(_:))

改变导航栏是透明的属性,显示标签的坐标

@ objc private func右键点击(_ sender:any object){

navigationController?navigationBar.isTranslucent=!导航控制器!navigationBar.isTranslucent

updateLabelContent()

}

private func updateLabelContent(){

title=navigationController!navigationBar.isTranslucent?' Translecent ':'不透明'

让frameLabelOrigin=框架标签。框架。起源

frameLabel.text='框架标签' x=\(frameLabelOrigin.x),y=\(frameLabelOrigin.y)'

设constraintLabelOrigin=约束标签。框架。起源

constraintLabel.text='约束标签' x=\(constraintLabelOrigin.x),y=\(constraintLabelOrigin.y)'

打印(' \(标题)')

打印('状态栏框架:',ui应用程序。分享。状态栏框架)//(0.0,0.0,375.0,20.0)

打印('导航栏框架:',navigationController!navigationBar.frame) //(0.0,20.0,375.0,44.0)

}

通过点击右上角按钮,来查看变化。

透明时

不透明时

视图控制器的视角坐标改变,状态栏和导航栏的坐标不变

Navigation bar 从不透明变透明,status bar 和 navigation bar 的坐标都不变。整个 view 下移64,高度减小64,不会超出 window。没加约束的 frameLabel 坐标不变,但相对 window 的位置随着 view 一起下移。添加约束的 constraintLabel 的坐标改变,但是相对 window 的位置不变。

如果需要改变导航栏是透明的属性,就要考虑对其他视角会不会有影响,是否使用约束来定位。

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持我们!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • word文档无法编辑是怎么回事-
  • 华为手机怎么设置返回键(华为手机下面的三个按键设置方法)
  • lumia950怎么样(Lumia950体验分享)
  • otg连接是什么意思(OTG连接手机方法)
  • 笔记本触摸板怎么右键(笔记本电脑触控板手势操作设置)
  • 真我x7怎么样(realme X7 系列体验)
  • 苹果的A16处理器有多强(苹果的A16处理器的介绍)
  • 小米互传怎么用(小米手机的连接与共享教程)
  • 怎么设置电脑桌面图标自动对齐 设置电脑桌面自动整理图标的方法
  • 宽带错误651最简单解决方法(处理宽带错误651的措施)
  • 大学生手机有什么推荐(大学生换手机攻略)
  • 天玑1100和骁龙778g哪个好(骁龙778G、天玑900、天玑1100购选建议)
  • yum update 升级报错的解决办法
  • Windows10禁用屏保教程
  • 连接wifi显示无互联网连接怎么办(无线连上了却不能上网处理绝招)
  • 留言与评论(共有 条评论)
       
    验证码: