创建带有文本和图标的自定义 UIButton

Create a custom UIButton with text and icon

我想创建一个如下所示的自定义 UIButton

想法很简单,我希望 titleLabel 从领先的 24px 开始,到图标图像(即按钮右侧的方形视图)停止 12px 或更多。它最多可以包含 2 行。

问题是我不知道应该把这段代码放在继承自 UIButton 的 class 中的什么地方。

draw(_ rect: CGRect) 中应该包含哪些内容?

此外,我应该使用 titleLabeltitleEdgeInsets UIButton 属性以及 imageView/imageEdgeInsets 还是使用自定义属性这个?

您只是想让这些按钮工作、被点击并以某种方式做出反应? 这些按钮是自定义按钮,您可以为它们创建一个 Cocoa Touch Class 文件;命名并让它继承并成为 UIButton.

的子class

然后将该文件连接到故事板中的按钮。 但首先,您需要将新创建的文件 set/attach 添加到您的按钮中。单击按钮,在故事板的身份检查器中,选择按钮后转到 Class 字段并输入新文件的名称,不要忘记点击 'return' 保存更改.

现在,您的按钮已附加到该自定义 UIButton class。 从现在开始,您可以将所有图标图像和更多图标作为出口附加到您刚刚创建的自定义 UIButton Class。

最重要的是,现在这些按钮可以单独使用;它们可以是插座或触发操作方法。为了让它看起来和你一样,你只需要初始化你的按钮,即提供一个图标图像、文本等。

我写的清楚吗? 如果没有,我很乐意帮助你。