2013-06-08 2 views
0

그래서 몇 가지 검사가 textFieldDidEndEditing 내에서 진행됩니다.이 검사는 기본적으로 텍스트 상자의 입력을 사용하거나 사용하지 않도록 설정할 수 있습니다. 정상적으로 작동하는 것처럼 보입니다.textfield를 수정하려면 단추를 클릭하고 textFieldDidEndEditing은 호출되지 않습니까?

텍스트 상자 내부의 값에 영향을주는 단추와 연관된 IBAction이있는 경우 textFieldDidEndEditing이 호출되지 않습니까? 그것은 실제로 내가 textBox 입력 내에서 실제로 응답하는 것 같습니다.

텍스트 상자를 다시 설정하고 textFieldDidEndEditing을 실행하고 싶지만 텍스트 필드를 재설정하는 방법을 보낸 사람으로 일반 textField를 전달하는 방법을 모르겠습니다.

- (IBAction)reset; 
{ 
    txtCost.text = @""; 
    txtPrice.text = @""; 
    txtProfit.text = @""; 
    txtMargin.text = @""; 
    txtMarkup.text = @""; 
    txtTaxPercentage.text = @""; 
    txtTaxAmount.text = @""; 



} 

감사합니다. 설명이 도움이 될 것입니다.

+0

각각의 모든 UITextField에 대해 IBOutlets를 만들고 위임합니다. – user7388

답변

4

다른 발신자를 사용하여 textField 내부의 텍스트를 수동으로 변경하는 경우 대리자 메서드 textFieldDidEndEditing이 호출되지 않습니다. 위임 메서드는 resignFirstResponder에 응답하므로 사용자의 경우에는 절대로 실행되지 않습니다.

원하는 텍스트 필드를 기반으로 수동으로 호출 할 수 있습니다.

[self textFieldDidEndEditing:_yourTextField]; 
+0

완벽합니다. – user1923975

관련 문제