SwiftUI确实改变了我们设计和思考iOS应用程序的方式。 在WWDC 2019上首次亮相后,Apple通过引入大量新视图,属性包装和自定义类型进一步提升了性能。

但是,声明性框架仍处于起步阶段。 SwiftUI的错误使得在生产中很难使用。 此外,我们还没有看到iOS应用程序中许多SwiftUI的高级用例。

无论如何,许多开发人员已经赶上潮流,并构建了一些惊人的SwiftUI库,您可以在iOS应用程序中插入和播放这些库。

让我们逐步了解其中的一些。

1. PermissionsSwiftUI

无论是通过引入近似位置访问,有限的图片库还是最新的iOS 14广告跟踪权限,苹果每年都会提高应用程序权限。PermissionsSwiftUI还有一个UIKit版本,名叫SPPermissions,该类库的使用,参见《iOS开发中的神兵利器》第10章的第1节:通过SPPermissions以更加优雅的方式向申请权限

这种具有权限的透明性对消费者而言是福音,而对广告客户而言则是头疼。

该库包含Apple默认样式的所有12种iOS权限。 您可以从底部的表格轻松地在它们之间切换。

可以在任何视图上设置JMPermission视图修饰符以显示模式表,如下所示:

.JMPermissions(showModal: $showModal, for: [.photo, .microphone])

此外,该库还允许您使用setPermissionComponent设置自定义权限文本,图像和图标,以为用户提供更好的上下文。

2. Liquid

启动画面总是在任何应用程序中都可取。 通常,团队倾向于聘请设计师来创作引人注目的艺术品。

幸运的是,我们有一个现成的Swift软件包可以做到这一点。 该库可让您仅通过使用Liquid()自定义视图将液态的动画后挡板视图集成到您的SwiftUI界面中:

3. FontAwesomeSwiftUI

FontAwesome图标在组织的应用程序和网站中得到了广泛的使用。 图标为矢量形状这一事实表明,调整图标的大小不会失去质量。

通用命名法仅确保人们可以从云中即时更改其Android,iOS和Web应用程序的图标。

该库可利用枚举的强大功能将FontAwesome 5图标带到您的SwiftUI应用程序中。 对于iOS应用,您需要做的是:

FontAwesome.register()

设置完成后,您可以在SwiftUI文本中设置矢量图标,如下所示:

Text(AwesomeIcon.btc.rawValue).font(.awesome(style: .brand, size: 20)).foregroundColor(.white)

4. StepperView

步进器是当今应用程序的重要组成部分。 它们有助于向用户发送实时进度反馈。 遗憾的是,SwiftUI目前不支持本机Stepper视图。

但是,该库通过为StepperView提供开箱即用的支持来努力使您的开发更加轻松。 您可以使用自定义指标视图,类型,线条和文本对齐方式快速创建垂直和水平步进器。

5. PopupView

与Android不同,iOS早就没有内置的吐司了。 尽管出现了带有“ AirPods Connected”通知的iOS 14,但苹果生态系统基本上没有UI。

PopupView只是解决该问题的库。 顾名思义,这个Swift包有助于在您的SwiftUI界面中显示吐司和弹出窗口。

它带有以下用于自定义视图的可选参数:

  • type — toast, float, or default
  • position — top or bottom (for a default case, it just determines animation direction)
  • animation — custom animation for popup sliding onto the screen
  • autohideIn — time after which popup should disappear

6. AlertX

弹出窗口与“警告”对话框不同,因为前者不需要按钮,并且可以自动关闭。

如果默认的iOS警报看起来很无聊,请使用此处的库,使事情变得更加有趣。

AlertX是一个库,可帮助您轻松地在SwiftUI中设置自定义警报。 从更改背景主题到添加圆角,多个按钮和动画,使用此库可以实现一长串的事情。

这是简单的代码行即可实现的功能:

AlertX.Theme.wine(withTransparency: false, roundedCorners: true)

7. ActivityIndicatorView

iOS 14中的SwiftUI带来了一些进步。 但是,它仍然缺少原生的“活动指标”。 没错,您可以使用ProgressView在某种程度上显示不确定的加载程序。 再说一次,它不能被定制得很长。

ActivityIndicatorView库提供了在SwiftUI中创建的各种预设加载指示器。 从选择指示器的类型到添加颜色和渐变,您可以做很多事情来显示自己喜欢的进度指示器。

8. MarkdownUI

我们都喜欢Markdown编辑,不是吗? 它们使您可以使用标准语法在网络上编写格式化的文本。

SwiftUI缺少这一必不可少的工具,尽管可以通过使用UIViewRepresentable协议来利用UITextView,但内置的Markdown编辑器会更好。

再次,我们有一个用于在SwiftUI中渲染Markdown的库。 您可以设置粗体,斜体,内联代码等。 语法如下:

Markdown(#"""Make some words **bold** and other words *italic* with Markdown.## Inline codeWrap them in backticks: `var example = true`."""#
)

要自定义字体,请使用MarkdownStyle视图修饰符,您可以使用该修饰符设置字体名称和大小的标题和代码。

9. SlideOverCard

从屏幕底部弹出的卡片是一种设计模式,已被iOS开发人员越来越多地采用。 这并不奇怪,因为它默认用于Apple的HomeKit和Wifi共享UI中。

SlideOverCard是一个库,可将该卡设计引入您的SwiftUI界面。 您可以使用带有可选布尔参数的SlideOverCardView或slideOverCard视图修饰符来显示附件视图,例如displayExitButton,dragEnabled和dragToDismiss。

10. SwiftUICharts

图表是当今大多数应用程序的核心组成部分。 除了提供令人赏心悦目的视觉效果外,它们还可以用于显示股票和加密货币的数据以及各种统计工具。

该库可让您快速将折线图以及垂直和水平条形图集成到您的SwiftUI应用程序中。 锦上添花,它也支持辅助功能。

Conclusion

编程中有一个流行的语录:“除非您打算学习更多有关车轮的知识,否则请不要重新发明车轮。” 这当然适用于图书馆。

当您正在构建复杂的项目且时间很短时,拥有现成的库无疑会提高您的开发速度,并确保您不会浪费时间在别人已经解决的事情上。

我希望这组SwiftUI库能够激发您构建更多出色的iOS应用程序,并可能有助于开源项目。

译自:https://betterprogramming.pub/10-swiftui-libraries-to-use-in-2021-d21c0384e619

2021年将使用的10个SwiftUI库相关推荐

  1. 广东2021高考成绩查询6,2021全国高考6月10日全部结束 预计最快6月23日可查高考成绩...

    天气网讯,今天(10日)是部分地区高考最后一天,不少考生和家长都关心高考成绩的查询时间.据了解,安徽.江西.四川.广西.内蒙古预计最快6月23日可查高考成绩,小编在这也祝愿所有考生都能考上心仪的大学校 ...

  2. 吉大计算机专业排名2018,吉林大学排名 2021全国最新排名第10名

    说明:以下关于吉林大学排名数据参考自艾瑞深中国校友会网最新公布的<2021中国大学评价研究报告>,艾瑞深研究院是目前我国持续开展大学评价时间最长的研究团队,至今已近30年历史. 吉林大学2 ...

  3. steam服务器维护2021,2021绝地求生3月10日维护更新公告_3.10维护更新内容一览_3DM网游...

    游戏<绝地求生>中,今日又进行了一次不停机的维护.那么2021年3月10日维护更新公告是什么?很多玩家并不了解,各位小伙伴,一起来看3.10维护更新内容一览吧. 3.10维护更新内容一览 ...

  4. 2021安徽省安全员B证 多选题考试题库及答案

    来源:百分百题库公众号小程序 安全员考试B证(安全员)模拟考试及B证(安全员)题库,包含B证(安全员)模拟考试答案解析及B证(安全员)模拟考试系统练习.由百分百题库公众号结合国家B证安全员大纲最新题库 ...

  5. 2021年机修钳工(中级)考试题库及机修钳工(中级)试题解析

    题库来源:安全生产模拟考试一点通公众号小程序 安全生产模拟考试一点通:安全生产模拟考试一点通:机修钳工(中级)考试题库是安全生产模拟考试一点通生成的,机修钳工(中级)证模拟考试题库是根据机修钳工(中级 ...

  6. 2021年西式面点师(初级)考试题库及西式面点师(初级)考试试卷

    题库来源:安全生产模拟考试一点通公众号小程序 西式面点师(初级)考试题库参考答案及西式面点师(初级)考试试题解析由安全生产模拟考试一点通题库老师及西式面点师(初级)操作证已考过的学员汇总,相对有效帮助 ...

  7. 2021年中式烹调师(中级)考试题库及中式烹调师(中级)操作证考试

    题库来源:安全生产模拟考试一点通公众号小程序 安全生产模拟考试一点通:中式烹调师(中级)考试题库是安全生产模拟考试一点通总题库中生成的一套中式烹调师(中级)操作证考试,安全生产模拟考试一点通上中式烹调 ...

  8. 2021年危险化学品经营单位主要负责人考试题库及危险化学品经营单位主要负责人考试内容

    题库来源:安全生产模拟考试一点通公众号小程序 安全生产模拟考试一点通:2021年危险化学品经营单位主要负责人考试题库为正在备考危险化学品经营单位主要负责人操作证的学员准备的理论考试专题,每个月更新的危 ...

  9. 2021年R2移动式压力容器充装考试题库及R2移动式压力容器充装最新解析

    题库来源:安全生产模拟考试一点通公众号小程序 安全生产模拟考试一点通:2021年R2移动式压力容器充装考试题库为正在备考R2移动式压力容器充装操作证的学员准备的理论考试专题,每个月更新的R2移动式压力 ...

最新文章

  1. 贪心 ---- E. Maximum Subsequence Value[位运算]
  2. Fedora 17 meld 显示行号以及语法高亮
  3. GridView隐藏列, 并能读取列值的解决方法(转载)
  4. 老师不能把你怎样,但外面的世界可以!
  5. 湖南工程学院+c语言程序设计人事档案管理系统,程序设计人事档案管理系统.doc...
  6. dns服务器的配置与管理
  7. Sql Server 语句集合
  8. 一道BT的面试题之我见
  9. hdu 3466 Proud Merchants
  10. Sublime Text 3.1 编辑管理工程(项目)
  11. 《缠中说禅108课》30:缠中说禅理论的绝对性
  12. 家庭作业 题解(C++)
  13. 今日头条面试——iOS开发岗
  14. 3D程序设计离不开各种坐标系统
  15. sigmoid函数温习【函数曲线可视化与导函数曲线可视化】
  16. python列表(list)的遍历
  17. Java接口与接口的关系
  18. Android 蓝牙传导和耦合测试介绍
  19. Java笔记09——常用类
  20. 按汉字首字母排序(sql语句) 只为收集,本人复制粘贴水寒冰局的

热门文章

  1. c语言fread函数,C语言“fread”函数的用法?
  2. android xp wifi连接不上,【能连上wifi但上不了网必看】XP连安卓详细教程
  3. 华泰交易钩子之dll 2021-02-25
  4. 多行省略问题详解:省略号和文字重叠,vue之中多行省略失效。
  5. 视觉识别:CS231n卷积神经网络
  6. 《CondLaneNet:a Top-to-down Lane Detection Framework Based on Conditional Convolution》论文笔记
  7. 电脑未同步iCloud钥匙串
  8. 用Helloworld来阐释SpringBoot的简单与快速
  9. 老百姓计算机系,《老百姓装机宝典》,最新万元以内电脑组装配置,免费收藏!...
  10. android appcompat_v7\res\values-v23错误解决