나는 결과를 표시하기 위해 취소 3 텍스트 필드, 1 개 버튼 프로젝트와 레이블이 엑스 코드 8 스위프트 3.스위프트 : 동시에
을 사용하고 두 FUNC의 텍스트 필드를 사용하는 방법. 나는 3 자리 숫자뿐만 아니라 나는 두 가지에 대한 코드를 얻으려면 관리 360의 값을 최대로 내 텍스트 필드 입력을 제한 할
class ViewController: UIViewController,UITextFieldDelegate {
@IBOutlet weak var input1: UITextField!
@IBOutlet weak var input2: UITextField!
@IBOutlet weak var input3: UITextField!
@IBOutlet weak var lblResult: UILabel!
@IBOutlet weak var clearButton: UIButton!
및 사용 한 경우에는 작동 : 내 수업 내부
내가 가진의 ViewController 한 번에 하나씩 만 사용할 수 있습니다. 둘 다 func로 시작하기 때문에 텍스트 필드를 함께 사용할 수는 없습니다. 다른 수업에서해야합니까? 이것이 기본적인 질문이지만 학습 과정의 일부라는 것을 알고 있습니다.
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange,
replacementString string: String) -> Bool
{
let maxLength = 3
let currentString: NSString = textField.text! as NSString
let newString: NSString = currentString.replacingCharacters(in: range, with: string) as NSString
return newString.length <= maxLength
}
과 :
이
내가 결합하려는 두 개의 코드입니다func textField(_ textField: UITextField,
shouldChangeCharactersIn range: NSRange,
replacementString string: String) -> Bool
{
var startString = ""
if (textField.text != nil)
{
startString += textField.text!
}
startString += string
let limitNumber = Int(startString)
if limitNumber! > 360
{
return false
}
else
{
return true;
}
}
그들은 클래스의 ViewController 안에 모두 있습니다.
도움 주셔서 감사합니다.
이 시나리오에서는 어떤 '텍스트 필드'가 무엇인지 식별 할 필요가 없다고 생각합니다. 이 함수 안에있는 모든 변수는 로컬 변수입니다. 이것들은'UITextFieldDelegate'의 함수입니다. 모든 UITextField에 대해 'self'로 설정 했습니까? – KrishnaCA