Как отключить кнопку Go на клавиатуре iPhone, когда текстовое поле сфокусировано внутри UIWebView? - PullRequest
1 голос
/ 21 апреля 2011

На одном из экранов моего приложения отображается UIWebView с веб-формой HTML.В настоящее время, когда текстовое поле находится в фокусе и появляется клавиатура, отображается кнопка «Перейти».В настоящее время у меня нет пользователя для кнопки «Перейти», и нажатие на нее ничего не дает.

Как эту кнопку можно отключить или удалить, или как я могу изменить клавиатуру, которая отображается в UIWebView?

1 Ответ

2 голосов
/ 21 апреля 2011

Я думаю, что единственный вариант, который у вас есть, - это зарегистрироваться для обратного вызова, когда клавиатура будет отображаться, получить ссылку UIView на клавиатуру и добавить отключенную кнопку «Перейти» поверх кнопки фактического перехода на клавиатуре.

1) Сначала зарегистрируйтесь для уведомления клавиатурыWillshow.

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardDidHide:) name:UIKeyboardDidHideNotification object:nil];

2) В вашей функции клавиатурыWillShow просмотрите все подпоказы окна приложения, чтобы получить ссылку на клавиатуру.

UIWindow* tempWindow = [[[UIApplication sharedApplication] windows] objectAtIndex:1];

UIView* keyboard;

//Iterate though each view inside of the selected Window
for(int i = 0; i < [tempWindow.subviews count]; i++){
keyboard = [tempWindow.subviews objectAtIndex:i];
if([[keyboard description] hasPrefix:@"<UIKeyboard"] == YES){
//Keyboard is now a UIView reference to the UIKeyboard we want. From here we can add a subview
//to th keyboard like a new button
}
}

кодбеззастенчиво скопировано с этой ссылки .. Посмотрите на нее ... очень информативная тема ..

Я не знаю, есть ли какой-либо другой метод там ... Надеюсь, он будет полезен ..

...