소프트 키보드가 표시 될 때 뒤로 버튼을 무시하고 싶습니다. 기본적으로 뒤로 버튼이 눌려지면 키보드를 닫고 싶습니다. 사용자가 해당 텍스트 필드에 입력 한 텍스트를 추가하려고합니다. 그래서 기본적으로 키보드가 닫힐 때를 알아야합니다. 주위를 검색 한 후 API가 없다는 것을 깨달았습니다. 이렇게하는 유일한 방법은 EditText 클래스를 만드는 것입니다. Android 사용자 EditText 및 뒤로 버튼 덮어 쓰기
그래서 나는 내 자신의 EditText 클래스를 생성하고 나는 또한 키보드를 닫습니다,이 방법@Override
public boolean dispatchKeyEventPreIme(KeyEvent event)
{
if (KeyEvent.KEYCODE_BACK == event.getKeyCode())
{
Log.v("", "Back Pressed");
//Want to call this method which will append text
//init();
}
return super.dispatchKeyEventPreIme(event);
}
이제이 방법은 뒤로 버튼을 무시하지
을 추가 한이public class CustomEditText extends EditText
{
public CustomEditText(Context context)
{
super(context);
init();
}
public CustomEditText(Context context, AttributeSet attrs)
{
super(context, attrs);
init();
}
public CustomEditText(Context context, AttributeSet attrs, int defStyle)
{
super(context, attrs, defStyle);
init();
}
private void init()
{
}
}
처럼 글고 치기를 확장 하지만 EditText 필드에 텍스트를 전달하는 방법을 모르겠습니다. 아무도 내가 이것을 어떻게 할 것인지 알고 있니?
또 다른 빠른 질문, 누구도이 방법이 두 번 호출되는 이유를 알고 있습니까? 당분간 알 수 있듯이 빠른 logcat 메시지를 추가하여 작동 여부를 테스트했지만 뒤로 버튼을 누르면 두 번 인쇄됩니다. 이유는 무엇입니까?
도움이 될 것입니다!
아, 어리석은 나를 실현해야합니다. 하지만 내 다른 질문에 관해서. 키보드를 닫을 때 텍스트를 EditText 필드로 전달하는 방법을 알고 있습니까? – AdamM
수정 사항을 확인하십시오. – nandeesh
간단한 수정. 고마워요, 완벽하게 작동합니다! – AdamM