在 Storyboard上我有两个 UIButton。在我的 UIViewController 子类中,我有一个用于此按钮的 IBAction 方法。其中一个按钮有图像但没有标题,另一个按钮有标题但没有图像。因此,它只是一个充当按钮和普通按钮的图像。
这两个按钮都调用一个方法。问题是,如果我按下一个按钮,另一个按钮不会突出显示。这个按钮有填充的另一个问题,如果这个填充是可触摸的,对我来说会更好(我的意思是图像按钮和标题按钮之间的空间是可点击的)。
我知道我可以继承 UIButton 并根据需要制作我的按钮,但也许有一种方法可以在不继承的情况下制作我想要的东西?
谢谢。
最佳答案
1)
将两个按钮分配给属性。
当 IBAction 触发时,您可以通过这些控件将一个或两个按钮设置为突出显示 "highlighted
" properties , 或 via setHighlighted:
.
2)
至于使按钮之间的空间可触摸,将按钮图形的对齐方式设置为左对齐或右对齐(后者是我在下面的示例中所做的),这两个单独的按钮具有相互接触的边缘。
3) 或者...
您可以作弊,只需一个按钮,并在图像和按钮文本之间放置一些空间,如下所示:
是的,在“按钮”一词之前有一大堆空格(我已用绿色突出显示)。
关于iOS:将两个 UIButton 合并为一个 UIButton,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22623025/