[英]iOS 8 Swift navigation bar title, buttons not showing in tab based application
[英]iOS Swift Navigation Bar Buttons Shift Down
我使用以下代码向视图添加带有按钮的导航栏:
let navBar = UINavigationBar(frame: CGRectMake(0, 20, screenWidth, 44))
var homeButton : UIBarButtonItem = UIBarButtonItem(title: "", style: UIBarButtonItemStyle.Bordered, target: controller, action: "closeView")
homeButton.image = UIImage(named: "back.png")
var item = UINavigationItem(title: title)
item.leftBarButtonItem = homeButton
if addPlus {
var addButton : UIBarButtonItem = UIBarButtonItem(title: "", style: UIBarButtonItemStyle.Bordered, target: controller, action: "addItem")
addButton.image = UIImage(named: "plus-25.png")
item.rightBarButtonItems = [addButton]
}
var items = [
item
]
navBar.setItems(items, animated: true)
controller.view.addSubview(navBar)
由于某种原因,当显示任何类型的UIAlertView时,栏上的按钮都会向下移动。
任何想法为什么会这样?
在情节提要中,带上导航栏,使其自动适应屏幕,不要尝试将其向下移动。
这不是最好的解决方案,但是由于此行为仅发生在我的自定义栏按钮项(而不是我使用界面生成器制作的栏按钮项)中,因此我只是使用“ self.navBarNavItem.setRightBarButtonItems([],动画:true)删除了它们”,然后再调用“ presentViewController”。
然后,如果警报的结果(即用户选择的结果)导致停留在当前视图上(而不是更改视图),则在执行该处理程序时将它们重新添加到视图中。
这样可以阻止按钮在错误位置上明显显示,然后在警报完成后将它们放回正确的位置。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.