Android: запуск программной панели в пользовательском тексте редактирования - PullRequest
1 голос
/ 15 августа 2010

Я хочу показать экранную клавиатуру, но она не работает. Вот мой код:

 public void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        myTextView myTextView = new myTextView(this);

        setContentView(myTextView);
    }

public class myTextView extends EditText{

public boolean onTouchEvent(){

if(action == ACTION_DOWN){

super.onTouchEvent(event);

} }

Когда я касаюсь экрана, экранная клавиша не появляется, но появляется «редактировать текст» alertDialog, который появляется на обычных текстовых правках при длительном касании их. Этот дополнительный код в onCreate не имеет отношения:

InputMethodManager input = (InputMethodManager) 
getSystemService(Context.INPUT_METHOD_SERVICE);
input.showSoftInput(myTextView, 0);

Спасибо за помощь, Fr4gg0r

Ответы [ 2 ]

0 голосов
/ 29 августа 2010

Мне очень жаль, что этот очень поздний ответ .. Поэтому я попробовал ваш код с помощью следующей команды: myTextView.requestFocus ();Но клавиатура не отображается.

Я должен исправить свой текст: на эмуляторе клавиатура не отображается, но на моем Samsung Galaxy S она появляется!: О

0 голосов
/ 15 августа 2010

Попробуйте это -

    myTextView.setOnFocusChangeListener(
            new View.OnFocusChangeListener() {
                @Override
                public void onFocusChange(View v, boolean hasFocus) {
                    if (hasFocus)
                              getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
                }
            });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...