8 개의 텍스트 필드가 포함 된 내 응용 프로그램에서 양식과 유사한보기가 있습니다. 그 중 2 개는 선택기로 채워지고, 나머지는 보통의 하이 보드 타이핑으로 채워집니다. 피커 행을 선택하거나 돌아 가기 버튼을 누르면 해당 텍스트를 텍스트 필드에 입력해야합니다.다른 입력 (키보드/피커)이있는 하나의보기에서 여러 개의 uitextfields
올바르게 구현하는 방법에 대해 조언 해 주시겠습니까? 또한 선택/반환을 누른 후에 선택기/키보드를 닫을 수 있습니다.
나는 비슷한 것을 찾아 냈습니다 here. 그리고 나는 2 피커 - 텍스트 필드가 작동하도록 관리 할 수 있었지만 지금은 나머지를 위해 키보드를 표시 할 수 없습니다. textFieldShouldBegineEditing 메서드를 재정의했기 때문에 그럴 것 같습니다. 그 아이디어를 얻을 수있는 아이디어가 있습니까? 어떻게 든 textFieldShouldBeginEditing 내부에서 기본 메서드를 호출 할 수 있습니까 ?? 참고, textFieldShouldBeginEditing 내 마지막 줄의 주석을 제거하면 충돌이 발생합니다 ...
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField
{
currentTextField = textField;
if (textField == self.pickerField1) {
currentArray = self.array1;
[pickerView reloadAllComponents];
pickerView.hidden = NO;
[self animatePickerViewIn];
return NO;
}
if (textField == self.pickerField2){
currentArray = self.array2;
[pickerView reloadAllComponents];
pickerView.hidden = NO;
[self animatePickerViewIn];
return NO;
}
// else {
// [currentTextField becomeFirstResponder];
// return NO;
// }
- (void)pickerView:(UIPickerView *)pickerView
didSelectRow:(NSInteger)row inComponent: (NSInteger)component
{
[currentTextField setText:[currentArray objectAtIndex:row]];
[currentTextField resignFirstResponder];
pickerView.hidden = YES;
}
고마워요! -
나는 c의 헤이의 대신 키보드를 의미했습니다. ourse :) – user2135738
해결 된! if 문에서 YES를 반환하고 else 문에서 NO를 반환해야했습니다. – user2135738