我想创建一个类似于 UIButton
的自定义形状。我需要它将 touchUpInside
发送到按钮之类的目标,但是我想使用 drawRect
在按钮状态更改时更改按钮外观。
我在网上读到了很多关于不子类化 UIButton
或 UIControl
的相互矛盾的内容。
那么可接受的方法是什么?
此外,如果答案是
UIControl
,那么如何使用“beginTracking
”方法实现touchUpInside
?为什么我们不能子类化
UIButton
。我读过有关它是一个类簇的内容,并且没有使用UIButtonTypeCustom
因为它不起作用,但这是为什么?
我希望有人能阐明这一点,或者给我指出一些好的读物。
谢谢。
最佳答案
当我想做一个自定义按钮时,我遇到了同样的问题。我还读过许多帖子,这些帖子似乎没有找到子类 UIButton
的正确方法。对于您的情况,我建议子类化 UIButton
并重写 setHighlighted:
方法来调整选择的按钮。我有一个名为 LDGradientButton
的 UIButton 子类,可以在 lightdesign/LDGradientButton 找到。 。请随意查看绘图代码。就我而言,我使用的是 CALayers
,但如果我重来一遍,我可能会使用 CoreGraphics
。
关于ios - 使用自定义drawRect代码创建UIButton LIKE控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19278416/