當用戶選擇UITextField
時,我試圖隱藏鍵盤。我目前有三個文本字段:兩個UIPickerView
(由同一個選擇器控制)和一個文本輸入字段。當我點擊「返回」或在背景上時,鍵盤會通過resignFirstResponder
呼叫消失。當選擇另一個具有UIPickerView錯誤的UITextField時隱藏鍵盤
問題:
當我正在編輯的文本輸入框,然後立即選擇UITextField
W/UIPickerView
功能,鍵盤不會消失。我覺得我已經嘗試每一個解決方案,並通過我的頭靠在牆上跳動......
CODE:
-(void)textFieldDidBeginEditing:(UITextField *)textField{
[pickerView setHidden:YES];
if (fldQuiver.editing == YES) {
[fldTitle resignFirstResponder];
[fldQuiver resignFirstResponder];
[pickerView setHidden:NO];
variabla = 1;
}else if (fldCategory.editing == YES) {
[fldTitle resignFirstResponder];
[fldCategory resignFirstResponder];
[pickerView setHidden:NO];
variabla = 2;
}
NSLog(@"variabla %d",variabla);
[pickerView reloadAllComponents];
}
任何幫助,將不勝感激。提前致謝。
編輯的代碼王子:
- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField; // return NO to disallow editing.
{
//set logic for picker view here
if (textField == fldQuiver)
{
variabla = 1;
}
else if (textField == fldCategory) {
variabla = 2;
}
else
{
}
NSLog(@"variabla %d",variabla);
[pickerView reloadAllComponents];
if (textField == fldQuiver)
{
[fldTitle resignFirstResponder];
[pickerView setHidden:NO];
return NO;
}
else if (textField == fldCategory) {
[fldTitle resignFirstResponder];
[pickerView setHidden:NO];
return NO;
}
else
{
[pickerView setHidden:YES];
return YES;
}
}
ALSO:我有 「合成」,並宣佈@property
fldQuiver
和fldCategory
。我有IBOutlet
爲fldTitle
,fldQuiver
,fldCategory
。
pickerView
加載了一個基於變量的數組。
我實現了這個代碼 - 請參閱我的編輯。它不加載選擇器的內容,當我編輯文本輸入字段(fldTitle),然後選擇fldCategory或fldQuiver鍵盤仍然顯示。 –
另外,不知道你的意見是什麼意思,所以我可能做錯了...對不起,因爲我有限的知識 –
pickerview加載了一個基於variabla的數組。 –