iOS - UINavigationBar - 平面样式按钮

3
我想知道如何在UINavigationBar中实现类似Skype按钮的平面感,但又像下面截图中的“编辑”和“列表”按钮那样微微凸起。
我应该创建图片,还是有任何简单的方法可以通过代码或库来实现? Skype Buttons
1个回答

3

您需要创建两个图像,一个普通状态下的图像,另外一个是高亮、选中状态下的图像。然后使用这两个图像创建UIButton,并将此UIButton作为customView添加到UIBarButtonItem中。最后,您可以将UIBarButtonItem添加到navigationBar中。就是这样简单。


是的,那是简单的图像方式,但如何根据文本大小进行缩放?并保留“返回”按钮的左箭头?我在想是否有一个“神奇”的属性我错过了,因为许多应用程序共享这种样式。 - Vincent
UIImage *buttonImage = [[UIImage imageNamed:@"blueButton"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 16, 0, 16)]; 并且对于文本偏移,使用UIEdgeInsetsMake来查看UIButton参考中的UIButton.title。 - rowwingman
Skype 肯定使用了 UIBarButtonItem 子类。 - junglecat
他们使用drawRect:方法还是使用图像? - rowwingman

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接