2012-07-29 75 views
0

我想讓Android鍵盤在我的活動啓動時彈出。一個簡單的谷歌搜索顯示,你只需要requestFocus,我在我的.xml,但它仍然不會彈出。我是否犯了任何導致此不起作用的小錯誤?試圖讓Android鍵盤在活動啓動時彈出

測試上:

物理4.1 模擬器2.2

layout.xml:

<EditText 
     android:id="@+id/editText1" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_alignParentLeft="true" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentTop="true" 
     android:ems="10" 
     android:hint="To:" 
     android:inputType="textPersonName" > 

     <requestFocus /> 
    </EditText> 
+0

http://stackoverflow.com/questions/4804493/how-to-automatically-pop-up-keyboard – 2012-07-29 17:06:04

+0

我嘗試了所有的答案,但沒有一次成功。 – EGHDK 2012-07-29 17:28:45

回答

2

這工作:

myEditText.setOnFocusChangeListener(new View.OnFocusChangeListener() { 
    @Override 
    public void onFocusChange(View v, boolean hasFocus) { 
     if (hasFocus) { 
      getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE); 
     } 
    } 
}); 
+0

太棒了。謝謝! – EGHDK 2012-07-29 18:00:01

+0

樂意幫忙.. – 2012-07-29 18:05:46

0

試試這個代碼:

EditText input = (EditText) findViewById(R.id.editText1); 
InputMethodManager inputManager = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);   
inputManager.showSoftInput(input, InputMethodManager.SHOW_IMPLICIT); 
+0

我在'getActivity()'上得到一個錯誤,所以我用'this.getSystemService ...'替換它,但它不起作用。 – EGHDK 2012-07-29 17:24:27