Swift 踩坑笔记(四)—— 导航条中使用自定义按键的坑

2018-08-24  本文已影响58人  黑羽肃霜

自定义导航栏按钮遇到的问题

通读参考文章


如何初始化 UIBarButtonItem 避免踩坑

简单的方法来说,是用下面这段代码来做初始化

let barButton = UIBarButtonItem(image: UIImage.init(named: "icon_more_black")?.withRenderingMode(.alwaysOriginal), style: .plain, target: self, action: #selector(drawerTheDrawer))
navigationItem.leftBarButtonItem = barButton

这里几个说明


一些 UI 出图的左上角/右上角边距和默认的不同,怎么处理

通过使用上面提到的默认方式,我们从reveal中可以看到,相应区域的热区会自动形成。

例如我提供了一个 这样的图片,他的大小只有 7 * 14,但是我们可以看到,他的相应热区是 36 * 44。如果使用了错误的初始化方式(如上面提到的使用UIBarButtonItem.init(customView: customUIButton)),会造成热区变小,用户直接的感受就是我好像一直点不到这个按钮。

image.png

如果用的是另外一种方式,那么他的相应宽度,就等于自身的宽度.(假设我给的图片是17*17,那么宽度就只有17)

上一篇 下一篇

猜你喜欢

热点阅读