Android 소프트 키보드가 에뮬레이터에 표시되지 않음
저는 Android를 처음 사용합니다. 나는 벌써 2 시간을 검색에 보냈다. 내가 시도하는 소프트 키보드는 내 EditText
. 간단하게 만듭니다.
EditText editText = (EditText)findViewById(R.id.editText);
나는 시도했다 :
editText.requestFocus();//i tried without this line too
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(editText, InputMethodManager.SHOW_IMPLICIT);
과:
editText.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus)
{
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(editText, InputMethodManager.SHOW_IMPLICIT);
}
});
나는 또한 시도했다 :
getWindow().setSoftInputMode(LayoutParams.SOFT_INPUT_STATE_VISIBLE);
이 줄을 AndroidManifest.xml
파일에 넣어 보았습니다 .
android:windowSoftInputMode="stateVisible|adjustResize"
그러나 모두 헛된 것입니다. 그것은 결코 보여주지 않습니다. 내가 무엇을 놓치고 있습니까?
에뮬레이터가 하드웨어 키보드 를 사용하도록 설정되어 있지 않은지 확인해야합니다 . Edit
AVD에서 선택한 에뮬레이터를 선택하면 됩니다. 그런 다음 설정을 선택 취소 하십시오 Hardware keyboard present
.
Genymotion 과 같은 다른 에뮬레이터를 사용해 볼 수도 있습니다 . 전체 하드웨어 가속 (멀티 코어 CPU 및 GPU)을 지원하며 Android 에뮬레이터 이미지보다 훨씬 빠르게 실행됩니다. Genymotion을 사용하는 경우 Android 내에서 하드웨어 키보드를 비활성화해야합니다 (자세한 내용은 아래 참조).
Genymotion에서 하드웨어 키보드를 비활성화하려면 : ->로
이동하여 에서 항목을 엽니 다 . 켜고 끌 수 있는 설정이 있습니다. 이 경우 에 당신은 당신의 실제 키보드를 사용하고있을 때 떨어져 표준 소프트 키보드 팝업해야 텍스트 필드에 포커스를 얻을 때마다.Settings
Language & input
Default
Keyboard & Input Methods
Hardware
Genymotion 설정 스크린 샷 :
버전 2.1.1에서-가상 장치 설정을 클릭 한 다음 "입력에 가상 키보드 사용"확인란을 선택합니다.
AS 1.1.0에서 하드웨어 키보드를 선택 해제하는 두 곳이 있습니다. 이것으로는 충분하지 않습니다.
이 작업을 수행해야합니다 (클릭 Tools | Android | AVD Manager
한 다음 새 AVD를 만들거나 이전 AVD를 편집 한 다음 클릭 Show Advanced Settings
, 아래로 스크롤하여 지움 Enable keyboard input
).
에뮬레이터가 소프트 키보드를 지원하지 않을 수 있습니다.
하드웨어 속성 키보드 지원을 추가하고 에뮬레이터에 대해 true로 설정합니다.
표시하려면 :
EditText editText = (EditText) findViewById(R.id.myEdit);
InputMethodManager mgr = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
// only will trigger it if no physical keyboard is open
mgr.showSoftInput(editText, InputMethodManager.SHOW_IMPLICIT);
그리고 숨기려면 :
InputMethodManager mgr = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
mgr.hideSoftInputFromWindow(editText.getWindowToken(), 0);
이거 먹어봐 ....
Android Studio 2 이상 에뮬레이터에 화면 상 소프트 키보드를 활성화하는 방법은 에뮬레이터의 API 수준에 따라 다릅니다. API 15로 시작하는 다양한 방법을 테스트했으며 아래 단계를 기록했습니다.
[A] APIs 15, 17, 19 and 21.
The following steps will enabled the on-screen soft keyboard but will disable the ability to enter text and interact with the AVD using the hardware computer keyboard.
- In Android Virtual Device Manager (AVD), click the edit action for the device you wish to work with
- Click Show Advanced Settings and scroll right down to the bottom of the page to the "Keyboard" section
- Uncheck the "Enable keyboard input" option
[B] API 22
The soft keyboard is displayed no matter what you do with the hardware keyboard settings. If you wish to enable hardware keyboard support alongside the soft keyboard then,
- In AVD, click the edit action for the device you wish to work with
- Click Show Advanced Settings and scroll right down to the bottom of the page to the "Keyboard" section
- Check the "Enable keyboard input" option
[C] API 23
If you wish to use the hardware and soft keyboard then...
- Follow [B] steps 1 to 3
- On the virtual device, Launch Settings, then select Language and input / Current Keyboard
- Enable Hardware - Show input method
If you don't need the hardware keyboard, in AVD advanced settings, uncheck the "Enable keyboard input" option. You won't need to change any settings on the virtual device.
[D] APIs 24 and 25
- Follow [B] steps 1 to 3 above, checking or unchecking the "Enable keyboard input" option depending on whether you want to enable the hardqare keyboard.
- On the virtual device, Launch Settings, then select Language and input / Physical Keyboard
- Enable "Show virtual keyboard"
AVD에서 키보드 입력 활성화 옵션을 선택한 경우 이제 하드 및 소프트 키보드 입력을 모두 사용할 수 있습니다. AVD에서 옵션을 선택 취소하면 소프트 키보드가 표시됩니다.
[E] API 26
언어 및 입력 / 물리적 키보드에 도달하기 전에 장치 설정에서 추가 "시스템"메뉴 수준을 탐색해야한다는 점을 제외하면 [D] API 24 및 25와 정확히 동일합니다.
참고 URL : https://stackoverflow.com/questions/18288228/android-softkeyboard-never-shows-up-in-emulator
'Nice programing' 카테고리의 다른 글
Underline text in UIlabel (0) | 2020.09.25 |
---|---|
Equivalent of Clean & build in Android Studio? (0) | 2020.09.25 |
How to Edit Empty Spaces of Left, Right UIBarButtonItem in UINavigationBar [iOS 7] (0) | 2020.09.25 |
Clear code coverage information in Intellij (0) | 2020.09.25 |
넘치지 않고 다음 줄에 텍스트를 표시하려면 어떻게해야합니까? (0) | 2020.09.25 |