如何在swift委托中进行分段控制
所以我在我的项目中有一个分段控制 我想要的是,如果我在分段控件上单击“否” -它将检查验证,如果所有验证都已完成,则按钮将改变颜色,并且我的按钮处于启用状态 如果我在按钮上单击“是” -它将显示另一个文本字段,我的按钮将停用,直到所有验证完成 但我的问题是,如果在所有验证都已完成时单击“否”,然后再次单击“是”,则我的“下一步”按钮仍处于活动状态,除非单击文本字段并单击“完成”按钮 这是我的密码如何在swift委托中进行分段控制,swift,uisegmentedcontrol,Swift,Uisegmentedcontrol,所以我在我的项目中有一个分段控制 我想要的是,如果我在分段控件上单击“否” -它将检查验证,如果所有验证都已完成,则按钮将改变颜色,并且我的按钮处于启用状态 如果我在按钮上单击“是” -它将显示另一个文本字段,我的按钮将停用,直到所有验证完成 但我的问题是,如果在所有验证都已完成时单击“否”,然后再次单击“是”,则我的“下一步”按钮仍处于活动状态,除非单击文本字段并单击“完成”按钮 这是我的密码 func textFieldDidEndEditing(_ textField: UITextFie
func textFieldDidEndEditing(_ textField: UITextField) {
if(alamatIdentitasTextField.text != "" && provinsiIdentitasTextField.text != "" && kotaIdentitasTextField.text != "" && kelurahanIdentitasTextField.text != "" && kecamatanIdentitasTextField.text != "" && kodePosIdentitasTextField.text != "" ){
if alamatDomisiliSegmentedControl.selectedSegmentIndex == 0 {
if(alamatDomisiliTextField.text != "" && provinsiDomisiliTextField.text != "" && kotaDomisiliTextField.text != "" && kelurahanDomisiliTextField.text != "" && kecamatanDomisiliLabel.text != "" && kodePosDomisiliTextField.text != "" ){
nextButton.isEnabled = true
nextButton.backgroundColor = #colorLiteral(red: 1, green: 0.4431372549, blue: 0.003921568627, alpha: 1)
}else {
nextButton.isEnabled = false
nextButton.backgroundColor = #colorLiteral(red: 0.662745098, green: 0.662745098, blue: 0.662745098, alpha: 1)
}
}else if alamatDomisiliSegmentedControl.selectedSegmentIndex == 1 {
nextButton.isEnabled = true
nextButton.backgroundColor = #colorLiteral(red: 1, green: 0.4431372549, blue: 0.003921568627, alpha: 1)
}else {
nextButton.isEnabled = false
nextButton.backgroundColor = #colorLiteral(red: 0.662745098, green: 0.662745098, blue: 0.662745098, alpha: 1)
}
}else {
nextButton.isEnabled = false
nextButton.backgroundColor = #colorLiteral(red: 0.662745098, green: 0.662745098, blue: 0.662745098, alpha: 1)
}
}
如果分段控件的值发生变化,是否禁用下一个按钮并进行验证?很抱歉,回复太晚,是的,因为当分段控件发生变化时,该按钮将禁用并进行验证
我再次单击“是”,我的下一个按钮仍处于活动状态
:这听起来好像分段控件发生变化时没有进行验证。能否显示分段控件更改时执行的代码?这里显示的验证代码位于textfielddidediting
中,毕竟这听起来不像是要在分段控件更改上执行的。