SwiftUI学习100天(Day73 - 项目 14,第六部分)

原创链接:https://www.hackingwithswift.com/100/swiftui
以下内容仅供学习参考:

这是另一个困难的项目,但你成功了,我希望你的头脑已经在思考如何使用你学到的技能。无论是为购物应用程序集成地图、使用 Face ID 保护数据,还是其他,从长远来看,你在这里学习的每项技能都会带来回报。
今天我们将进入项目的审查和挑战部分,你可以在其中使用你自己的一些代码进一步提升你的技能。正如拉尔夫·沃尔多·爱默生 (Ralph Waldo Emerson) 曾经说过的那样,“除非你尝试做一些超出你已经掌握的事情,否则你永远不会成长。” 所以,把这当作成长的一天吧!
今天你应该完成项目 14 的总结章节,完成它的回顾,然后完成它的所有三个挑战。

愿望清单:总结
这是我们迄今为止最大的项目,但我们涵盖了大量的基础知识:添加Comparable
自定义类型、查找文档目录、集成 MapKit、使用生物识别身份验证、安全Data
写入等等。当然,你还有另一个真正的应用程序,希望你能够完成下面的挑战以更进一步。
尽管我们制作的这个确切的项目将地图置于其存在的中心,但它们在其他地方也非常有用,就像小红利一样 - 显示会议地点或朋友的位置等,可以添加额外的有用细节你的其他项目。
回顾你学到的东西
任何人都可以听完教程,但要记住所教的内容需要实际工作。我的工作是确保你从这些教程中获得尽可能多的知识,因此我准备了一个简短的评论来帮助你检查你的学习情况。
单击此处查看你在此项目中学到的知识:
https://www.hackingwithswift.com/review/ios-swiftui/bucket-list
挑战
最好的学习方法之一是尽可能多地编写自己的代码,因此你应该尝试通过以下三种方式扩展此应用程序,以确保你完全理解正在发生的事情。
我们的 + 按钮很难点击。尝试将其所有修饰符移动到按钮内的图像 - 它有什么不同,你能想到为什么吗?
当生物识别身份验证过程中发生错误时,我们的应用程序会静默失败,因此添加代码以在警报中显示这些错误。
创建另一个视图模型,这次是
EditView
. 你在视图模型中放什么取决于你,但我建议在视图本身中放置离开dismiss
和
onSave
- 前者使用只能由视图读取的环境,而后者在移入时并没有真正添加任何东西该模型。
提示:最后一个挑战将要求你在初始化程序中EditView
创建一个实例
StateObject
——请记住在属性名称中使用下划线!


