gpt4 book ai didi

ios - 我的导航栏是否违反了 IOS 人机界面指南

转载 作者:行者123 更新时间:2023-11-28 23:54:12 25 4
gpt4 key购买 nike

我想重新定位导航栏的左右按钮,以便有三个并且它们的间距相等。为此,我查看了这个问题以供引用:stackover flow - How to edit position of navigation bar button .我设法自己解决了这个问题,方法是更改​​按钮框架的大小,使其看起来如下所示:

My Navigation Bar (Black and white boxes are buttons in the navigation bar)

但是,该帖子表示,如果我破坏 HIG,那么我的应用程序将从应用程序商店中删除。所以我想知道这在多大程度上是正确的(因为我不必破坏 Xcode 来实现我想要的)以及我现在拥有的是否安全。

这是我的代码:

viewDidLoad() {

let todolistButton = UIButton(type: .system)
todolistButton.backgroundColor = UIColor.black
todolistButton.frame = CGRect.init(x: 0, y: 0, width: (view.frame.width-50)/3, height: 44)
navigationItem.leftBarButtonItem = UIBarButtonItem(customView: todolistButton)

let scheduleButton = UIButton(type: .system)
scheduleButton.backgroundColor = UIColor.black
scheduleButton.frame = CGRect.init(x: 0, y: 0, width: (view.frame.width-50)/3, height: 44)

let calendarButton = UIButton(type: .system)
calendarButton.backgroundColor = UIColor.white
calendarButton.frame = CGRect.init(x: 0, y: 0, width: ((view.frame.width-50)/3)+2, height: 44)

navigationItem.rightBarButtonItems = [UIBarButtonItem(customView: scheduleButton), UIBarButtonItem(customView: calendarButton)]
}

谢谢!

最佳答案

一般来说,Apple 并不会因为破坏 HIG 而拒绝应用程序。

但是,您的解决方案有一个问题:您在 viewDidLoad 中使用 view.frame.width。当时 View 的大小可能不正确。在 viewWillLayoutSubviews 之前,您不能依赖 View 大小的正确性。

关于ios - 我的导航栏是否违反了 IOS 人机界面指南,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51596588/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com