라디오 버튼 만들기 (옵션)
7501 단어 Swift
할 수 있는 것
그중 하나를 고르라고 했을 때다른 옵션을 클릭하면 이전에 선택한 것에 대한 검사가 빗나간 것을 만들고 싶어요.
활용단어참조
isSelected
UIButton에는 Bool 유형의 속성
isSelected
이 있습니다.(추정된 상태인지 여부를 나타냅니다.)버튼을 눌렀을 때 반대
isSelected
해야 하는 단계@IBAction에서radio1Button.isSelected = !radio1Button.isSelected
상태를 바꿀 수 있다.그리고 이때 다른 버튼
isSelected
을 진짜로 선택한 경우 가짜로 설정하면 됩니다.if radio2Button.isSelected {
radio2Button.isSelected = !radio2Button.isSelected
}
에서 설명한 대로 해당 매개변수의 값을 수정합니다.radio2Button.isSelected = false
도 가능합니다.옵션의 수량만 진행하면 라디오 단추를 사용할 수 있습니다.
setImage
UIButton의
setImage
방법에는 for라는 매개변수가 있습니다.radio1Button.setImage(uncheckedImage, for: .normal)
이는 상기isSelected
와 밀접한 관계를 가지며 선택하지 않은 경우normal
, 선택한 경우selected
의 상태를 나타낸다.따라서
setImage
때 각자의 상태에 대응하는 이미지를 결정함으로써 시각적으로 선택했는지 여부를 나타낼 수 있다.ex)normal에는 하트가 있습니다.selected는 채워진 마음을 설정할 수 있습니다
radio1Button.setImage(uncheckedImage, for: .normal)
radio2Button.setImage(uncheckedImage, for: .normal
기능 자체소스 코드
override func viewDidLoad() {
super.viewDidLoad()
radio1Button.setImage(uncheckedImage, for: .normal)
radio2Button.setImage(uncheckedImage, for: .normal
}
@IBAction func radio1Button(_ sender: Any) {
radio1Button.isSelected = !radio1Button.isSelected
reportString = "スパム/宣伝目的"
if radio2Button.isSelected {
radio2Button.isSelected = !radio2Button.isSelected
}
if radio3Button.isSelected {
radio3Button.isSelected = !radio3Button.isSelected
}
if radio4Button.isSelected {
radio4Button.isSelected = !radio4Button.isSelected
}
if radio5Button.isSelected {
radio5Button.isSelected = !radio5Button.isSelected
}
if radio1Button.isSelected || radio2Button.isSelected || radio3Button.isSelected || radio4Button.isSelected || radio5Button.isSelected {
submitButton.isEnabled = true
submitButton.setTitleColor(UIColor.black, for: .normal)
} else {
submitButton.isEnabled = false
submitButton.setTitleColor(UIColor.gray, for: .normal)
}
}
Reference
이 문제에 관하여(라디오 버튼 만들기 (옵션)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Hyperbolic_____/items/3ef4732536e548deceb3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)