2010-07-27 1 views
1

В моем приложении я убедительно показываю/скрываю клавиатуру, создавая textview startfirstresponder и resignfirstresponder, а также устанавливая textview editable YES и NO соответственно.textview не отвечает делегатам iphone

Но после скрытия клавиатуры, если я коснусь текста, клавиатура не отображается. Я устанавливаю делегата textview для себя. И метод делегата запускается в первый раз, но не после этого.

EDIT: Я использую следующий код, который я пишу для пользовательской кнопки отводов и проверка флагов для проверки клавиатуры находится в скрытом состоянии или иным образом:

switch(rotationFlag) 
{ 
    case 0: 
    { 
     [self hideKeyboard]; 
     rotationFlag = 1; 
     break; 
    } 

    case 1: 
    { 
     [self showKeyboard]; 
     rotationFlag = 0; 
     break; 
    } 
} 

-(void)hideKeyboard{ 
[txtVwForPosts setEditable:FALSE]; 
[txtVwForPosts resignFirstResponder]; 
} 

-(void)showKeyboard{ 
[txtVwForPosts setEditable:TRUE]; 
[txtVwForPosts becomeFirstResponder]; 
} 

Что это такое, что я делать не так?

Может ли кто-нибудь помочь? Thanx заранее.

+0

можете ли вы разместить код? – lukya

+0

Я не знаю, если вы не внесете код – vodkhang

+0

Пожалуйста, проверьте мой отредактированный вопрос .. – neha

ответ

0
switch(rotationFlag) 
{ 
    case 0: 
    { 
     [self hideKeyboard]; 
     rotationFlag = 1; 
     break; 
    } 

    case 1: 
    { 
     [self showKeyboard]; 
     rotationFlag = 0; 
     break; 
    } 
} 

-(void)hideKeyboard 
{ 
    [txtVwForPosts resignFirstResponder]; 
} 

-(void)showKeyboard 
{ 
    [txtVwForPosts becomeFirstResponder]; 
} 
+0

Не работает .. После вызова метода hideKeyboard не будет обнаружен щелчок textView. Появляется только метод showKeyboard на пользовательской кнопке. – neha

+0

Я использую UITextViewTextDidBeginEditingNotification, который не отправляется, когда я нажимаю textview также textViewShouldBeginEditing: метод делегирования не получает вызов .. – neha

+0

Oh! которые все делегаты вы используете? – Manjunath

0

Я не уверен, что случилось с вашим кодом, но следующий код, который я написал для той же цели:

-(IBAction)hideShowKeyboard:(id)sender 
{ 
    if([tv isFirstResponder]) 
    { 
     [tv resignFirstResponder]; 
    } 
    else 
    { 
     [tv becomeFirstResponder]; 
    } 
} 

Это было действие для кнопки. и tv - выход TextView. Но это представление не обнаруживает нажатия на текстовое окно после скрытия клавиатуры. Если вы хотите обнаружить краны, просто не устанавливайте для свойства editable значение NO.

+0

установка setEditable свойство NO не работает. Клавиатура не отображается при нажатии на текстовое окно, когда оно скрыто. – neha

+0

Не устанавливайте редактируемое значение NO (я написал, чтобы не задавать ему НЕТ в ответе). Выше код обнаруживает краны, если [tv setEditable: NO]; закомментирован. – lukya

+0

Да .. Я имел в виду то же самое, извиняюсь за плохое письмо .. но комментируя этот текст, не работает. – neha