저는 프로젝트의 모든 버튼 모양을 제어하려고했습니다. Extension을 만들고 하나의 ViewController 파일의 맨 위에 배치하여 해당 뷰의 모든 버튼 모양을 제어합니다. 그것은 위대한 작품. 여기에 있습니다 :전 세계적으로 버튼 모양 제어
import UIKit
// EXTENSION TO CONTROL BUTTON APPEARANCE
extension UIButton {
func styleButton() {
self.layer.cornerRadius = 8
self.layer.borderWidth = 2
self.layer.borderColor = UIColor.red.cgColor
}
}
class DefaultSettingsVC: UIViewController, UITextFieldDelegate {
...
// IN VIEWDIDLOAD :
myButton1.styleButton()
myButton2.styleButton() //etc.
유일하게 모든 ViewController 파일의 맨 위에 넣어야합니다. (나는 여기서 올바른 용어를 사용하기를 희망한다.) 그래서 대신에 UIButton의 서브 클래스 인 완전히 새로운 파일을 만들 것이라고 생각했다. 다음은 전체 파일의 내용입니다.
import UIKit
class ButtonStyle: UIButton {
func styleButton() {
self.layer.cornerRadius = 8
self.layer.borderWidth = 2
self.layer.borderColor = UIColor.red.cgColor
}
}
하지만 지금은 무엇입니까? 내 ViewController 파일의 클래스 줄에 추가하려고하면 "클래스에서 다중 상속"오류가 발생합니다.
class DefaultSettingsVC: UIViewController, UITextFieldDelegate, ButtonStyle {
나는 완전히 잘못된 트랙에 있습니까? 내가 완전히 다른 방식으로해야할까요? 어떤 도움이라도 좋을 것입니다. 내 스위프트 전문 지식은 5 점 만점에 2.5 점이므로 여전히 배우고 있으며 가능한 경우 몇 가지 지침에 감사 할 것입니다.
암시 적으로'styleButton()'을 적용해야하는 하위 클래스를 만들고 싶다는 것입니다. –
나는 그렇게 생각한다. 그러나 그것이 그것이 올바른 방법인지 확실하지 않습니다. – Jupiter869
질문에 답하기 전에 무엇을 달성하고자하는지 정확히 알 수 있습니까? 그래서 나는 유용한 접근법을 제안 할 수있다. –