두 개의 텍스트 필드가 있습니다.
하나는 사람 유형에 대한 것입니다 : "남편,"아내 ","미혼 ","자녀 ", 다른 하나는 출생 순서를위한 것입니다.
개인 유형 텍스트 필드의 텍스트가 "Child"인 경우에만 출생 순서 텍스트 필드를 활성화하고 싶습니다.
사람 유형 텍스트 필드의 입력보기는 4 가지 옵션이있는 선택기보기입니다. 다음과 같이 내 사람 유형 텍스트 필드에 대상을 추가하려고 시도했습니다.
personTypeTextField.addTarget(self, action: #selector(onTextChange), for: UIControlEvents.editingChanged)
그런 다음 onTextChange 함수는 다음을 수행합니다.
func onTextChange() {
if personTypeTextField.text == "Child" {
birthOrderTextField.isEnabled = true
} else {
birthOrderTextField.isEnabled = false
birthOrderTextField.text = ""
}
}
그러나 선택기보기로 사람 유형을 선택할 때 onTextChange 함수가 호출되지 않습니다. 왜 호출되지 않습니까?
textField 선택기 대신 UIPickerView delgate 메서드 아래에서 사용할 수 있습니다.
행 선택에 응답
func pickerView (UIPickerView, didSelectRow : Int, inComponent : Int)
사용자가 구성 요소에서 행을 선택할 때 선택기보기에서 호출됩니다.
self.personTypeTextField.text = YOUR_ARRAY[row]
마지막으로 확인
if personTypeTextField.text == "Child" {
birthOrderTextField.isEnabled = true
} else {
birthOrderTextField.isEnabled = false
birthOrderTextField.text = ""
}
pickerView에 델리게이트를 할당하는 것을 잊지 마십시오.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다