这是一个可以完全自定义的 UIControl
子类,允许您在不编写任何代码的情况下创建精美的按钮。
预览
您将能够仅使用界面构建器创建这样的按钮
此外,您可以使用它们进行异步操作。
安装
要使用 CocoaPods 将 LGButton 集成到您的 Xcode 项目中,请在您的 Podfile
中指定它
use_frameworks!
pod 'LGButton'
图标和图像
您可以将图像/图标添加到按钮中,图标来自不同的可用字体图标集合,图像可以直接从您的项目资产文件夹导入。
您可以在按钮标题的左侧和/或右侧自定义图标/图像。
图标
图标通过 SwiftIconFont 集成管理,您可以通过从最流行的字体图标库中挑选来轻松添加和自定义按钮图标。特别是
收藏 | 字体名称 | 速查表 |
---|---|---|
Font Awesome | fa | 列表 |
Ion Icons | io | 列表 |
Octicons | oc | 列表 |
Open Iconic | ic | 列表 |
Material Icon | ma | 列表 |
Themify | ti | 列表 |
Map Icons | mi | 列表 |
使用字体图标时,您需要设置以下主要属性
-
图标字体名称:您可以从上表中选择一个值,不同的值将被忽略(请注意,由于该库可能不会立即更新字体库的更新,因此可能并非所有图标都可用)。
-
图标字符串:从速查表中获取的图标名称,不带收集前缀。
因此,如果您想使用 fa-align-left
来自 Font Awesome
,则 图标字体名称 将是 fa
,而 图标字符串 将是 align-left
。
图片
设置图片源属性来使用您资源文件夹中的图片。
注意:如果设置了图片源,则忽略同一侧有关字体图标的其它属性。
使用
将 UIView
对象拖放到您的视图控制器中,并将其类和模块设置为 LGButton
。
通过设置界面构建器中的属性来自定义按钮。
支持的属性
属性 | 描述 | 默认值 |
---|---|---|
Bg Color | 主要背景颜色 | clear |
显示触摸反馈 | 是否显示触摸反馈 | true |
渐变开始颜色 | 渐变背景的第一种颜色 | nil |
渐变结束颜色 | 渐变背景的第二种颜色 | nil |
渐变结束颜色 | 渐变背景的第二种颜色 | nil |
水平渐变 | 是否应该为水平渐变 | false |
渐变旋转 | 设置渐变旋转角度(从-360到360度) | 0 |
圆角半径 | 圆角半径 | 0.0 |
完全圆角 | 应用等于高度/2的圆角半径 | false |
边框颜色 | 边框颜色 | 白色 |
边框宽度 | 边框宽度 | 0.0 |
标题颜色 | 标题颜色 | 白色 |
标题字符串 | 标题字符串 | EMPTY_STRING |
标题字体名称 | 标题字体名称 | nil |
标题字体大小 | 标题字体大小 | 14.0 |
垂直方向 | 如果true ,则左侧图标将位于顶部,右侧图标将位于底部 |
false |
左侧图标字符串 | 左侧图标的名称(从辅助表格中获取) | EMPTY_STRING |
左侧图标字体名称 | 左侧图标字体名称(从上表获取) | EMPTY_STRING |
左侧图标字体大小 | 左侧图标字体大小 | 14.0 |
左侧图标颜色 | 左侧图标颜色 | 白色 |
左侧图片源 | 左侧源资产的名称 | nil |
左侧图片高度 | 左侧图片高度 | 20.0 |
左侧图片宽度 | 左侧图片宽度 | 20.0 |
左侧图片颜色 | 左侧图片调色 | nil |
右侧图标字符串 | 右侧图标的名称(从辅助表格中获取) | EMPTY_STRING |
右侧图标字体名称 | 右侧图标字体名称(从上表获取) | EMPTY_STRING |
右侧图标字体大小 | 右侧图标字体大小 | 14.0 |
右侧图标颜色 | 右侧图标颜色 | 白色 |
右侧图片源 | 右侧源资产的名称 | nil |
右侧图片高度 | 右侧图片高度 | 20.0 |
右侧图片宽度 | 右侧图片宽度 | 20.0 |
右侧图片颜色 | 右侧图片调色 | nil |
标题图标间距 | 标题和图像/图标之间的间距 | 16.0 |
顶部间距 | 内部顶部间距 | 8.0 |
底部间距 | 内部底部间距 | 8.0 |
引导间距 | 内部引导间距 | 16.0 |
尾随间距 | 内部尾随间距 | 16.0 |
阴影偏移 | 阴影偏移 | (0,0) |
阴影半径 | 阴影半径 | 0.0 |
阴影不透明度 | 阴影不透明度 | 1.0 |
阴影颜色 | 阴影颜色 | 黑色 |
加载旋转器颜色 | 加载旋转器颜色 | 白色 |
加载字符串 | 加载消息文本 | EMPTY_STRING |
加载字体名称 | 加载消息字体名称 | EMPTY_STRING |
加载字体大小 | 加载消息字体大小 | 14.0 |
左对齐 | true 如果按钮项应该左对齐。它需要按钮具有固定宽度 |
false |
右对齐 | true 如果按钮项应该右对齐。它需要按钮具有固定宽度 |
false |
如果您想查看更多内容,可以下载演示项目。
问题
请随意提交问题和功能请求。
贡献
热烈欢迎您的贡献。您的贡献可以包括修复错误或/和添加新功能。
请遵循“分支和拉取”Git工作流程(更多信息请参阅此处)。
- 在GitHub上分支此仓库
- 将项目克隆到您的计算机上
- 将更改提交到您的分支
- 将您的作品推回您自己的分支
- 提交一个拉取请求,以便我可以审查您的更改
注意:在提交拉取请求之前,请确保合并来自“上游”的最新版本!
作者
Lorenzo Greco
鸣谢
SwiftIconFont项目被用于提供可使用的图标。
许可
MIT License
Copyright (c) 2017 Lorenzo Greco
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.