0

하드웨어 메뉴 버튼을 길게 누르면 키보드가 어떻게 튀어 나오는지 알고 싶습니다. 핵심 청취자는 서비스에서 사용할 수 없다는 것을 읽었습니다. 그렇다면 메뉴 버튼이 키보드를 얼마나 정확하게 트리거 할 수 있습니까?메뉴 버튼 키보드 열기

편집

내 질문에 조금 모순 것 때문에, 여기에 무슨 뜻인지입니다.

앱 서랍에있을 때 메뉴 버튼을 길게 누르면 키보드가 나타납니다. 또는 앱을 사용하고 메뉴 버튼을 길게 누르면 키보드가 계속 팝업됩니다.

그래서 키보드 서비스라고 가정하고 있지만 서비스에는 주요 수신기가 없습니다.

어떻게 가능합니까?

+0

를 사용하고 난 당신이 레이아웃에 초점을 선언해야합니다 생각합니다. 나는 거기에 onfocus와 edittext가 있다고 생각합니다 – Androyds

+0

@Androyds 당신은 내 질문을 이해하지 못합니다. 이것은 앱 개발과 관련이 없습니다. 기기를 사용하는 동안 포어 그라운드에있는 앱과 상관없이 하드웨어 메뉴 버튼을 길게 누르면 키보드가 나타납니다. 어떻게 될까요? –

답변

0

그것을 숨기려면 화면 키보드를

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE); 

를 표시 할 경우 버튼 리스너

에이 코드를 넣어 Android의 서비스에 keyListener를 추가하십시오. 사용자 정의 모드이고 함수가 프레임 워크 자체에 포함 되었기 때문에 메뉴 버튼이 키보드를 트리거합니다. 서비스 keylistener 또는 다른 이론 때문이 아닙니다.

당신이 궁금하다면

, 내가 CM7.2.0 - 버즈

0

당신이 어떠한 방식이 없습니다

getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); 
+0

질문을 수정했습니다. 다시 읽으십시오. –

0
@Override 
public boolean onKeyLongPress(int keycode, KeyEvent event){   
    if (keycode == KeyEvent.KEYCODE_MENU){  
     InputMethodManager inputMethodManager=(InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE); 
     inputMethodManager.showSoftInput(lv, InputMethodManager.SHOW_IMPLICIT);    
    } 
    return true; 
} 
+0

질문을 수정했습니다. 다시 읽으십시오. –