Я разрабатываю приложение, в котором я предоставил три варианта входа, такие как facebook, google и apple. и мне нужно установить одинаковый дизайн для всех трех. Мой вход с помощью кнопки Apple прямоугольный, и я хочу знать, могу ли я изменить дизайн этой кнопки и как. Мне нужно сделать его круглым только с логотипом Apple, а не с текстом. Итак, как я могу установить изображение логотипа Apple на ASAuthorizationAppleIDButton. Я читал о дизайне яблок по следующей ссылке, но ничего не упоминается о том, как установить изображение на кнопку. https://developer.apple.com/design/human-interface-guidelines/apple-pay/overview/buttons-and-marks/
Как установить только изображение логотипа Apple для входа с помощью кнопки Apple
Ответы (2)
Вам необходимо создать собственную кнопку согласно Руководство Apple по человеческому интерфейсу. Вы должны следовать их инструкциям, чтобы избежать отказов в рецензировании.
Ресурсы по дизайну Apple можно загрузить с здесь
Чтобы добавить пользовательскую кнопку в приложение:
func appleCustomLoginButton() {
//Sign in with app is only available from iOS 13 onwards
if #available(iOS 13.0, *) {
let customAppleLoginBtn = UIButton()
customAppleLoginBtn.backgroundColor = UIColor.white
customAppleLoginBtn.setImage(UIImage(named: "appleLogo"), for: .normal)
customAppleLoginBtn.addTarget(self, action: #selector(actionHandleAppleSignin), for: .touchUpInside)
view.addSubview(customAppleLoginBtn)
// Setup Layout Constraints to be in the center of the screen
customAppleLoginBtn.translatesAutoresizingMaskIntoConstraints = false
NSLayoutConstraint.activate([
customAppleLoginBtn.centerXAnchor.constraint(equalTo: self.view.centerXAnchor),
customAppleLoginBtn.centerYAnchor.constraint(equalTo: self.view.centerYAnchor),
customAppleLoginBtn.widthAnchor.constraint(equalToConstant: 200),
customAppleLoginBtn.heightAnchor.constraint(equalToConstant: 40)
])
}
}
@objc func actionHandleAppleSignin() {
//do something when button is clicked
}
person
Mahendra
schedule
13.07.2020
Все очень просто. Если у вас есть дополнительные вопросы, пожалуйста, не стесняйтесь спрашивать, спасибо.
//1. setting apple logo
let appleLogo = UIImage(systemName: "appleLogo.png")!
//2. create a button
let button = UIButton()
//3. setImage with image name
button.setImage(appleLogo, for: .normal)
//4. Set image rounded.
button.layer.cornerRadius = button.frame.height/2
//5. Setting empty button text
button.titleLabel?.text = ""
person
Kudos
schedule
13.07.2020
Объясните, почему вы думаете, что это правильное решение. Это может быть очень просто для вас, но не для других.
- person koen; 13.07.2020
Привет, @koen, ты попробовал мой метод. Т.к. это очень простой способ. Я написал комментарий для понимания.
- person Kudos; 13.07.2020