我正在我的iOS应用程序(SwiftUI)上使用Apple进行登录。
在SwiftUI中,我可以使用“SignInWithAppleButton”(https://morioh.com/p/524e0408008c),此按钮显示Apple徽标和一个文本,可以是“与Apple登录”、“与Apple注册”或“继续与Apple”,具体取决于选择的按钮类型(ASAuthorizationAppleIDButton.ButtonType)。
不过,我希望按钮的大小为120 x60(WxH)。如果我只是调整这个按钮的大小,文本仍然可见,显示非常小,苹果图标也调整了大小,无法看到,所以它是不可用的。我只想显示Apple图标**。这似乎是设计指南所允许的(https://developer.apple.com/design/human-interface-guidelines/sign-in-with-apple/overview/buttons/)
如何在SwiftUI中实现这一点?我找不到使用Apple按钮实现自定义登录的示例。
谢谢你的建议!
1条答案
按热度按时间iq0todco1#
您将只找到编程基本部分的示例代码。
如果你想自定义行为/外观,你将不得不创建自己的。我建议您从
SignInWithAppleButton
的init()
开始然后创建一个
View
和一个使用该初始化器的ViewModel: ASAuthorizationControllerDelegate
。onRequest
和onCompletion
是函数块/完成处理程序,因此需要read up on those因此,您知道如何在
handleAuthorizationAppleIDButtonPress
(添加到请求)以及ASAuthorizationControllerDelegate
返回.success
或.failure
时使用它们您的
View
body
只需要调用ViewModel
中的handleAuthorizationAppleIDButtonPress()
的Button
(参见Apple的示例代码)您可以在文档Implementing User Authentication with Sign in with Apple中找到Apple的示例代码