开发者

EditText with soft keyboard and "Back" button

开发者 https://www.devze.com 2023-03-16 23:10 出处:网络
When I\'m using \"EditText\" I have the virtual keyboard. Pressing first time \"开发者_开发问答Back\" button hides the keyboard. Second press invokes \"onBackPressed\" callback in my activity. OK, bu

When I'm using "EditText" I have the virtual keyboard.

Pressing first time "开发者_开发问答Back" button hides the keyboard. Second press invokes "onBackPressed" callback in my activity. OK, but...

I have no idea how to hook the very first press. I need to process input data as soon as the virtual keyboard dismissed.

Any ideas are welcome.

Thanks.


You can override when the keyboard disappears using this method:

  public boolean onKeyPreIme(int keyCode, KeyEvent event) {
   if (keyCode == KeyEvent.KEYCODE_BACK && 
       event.getAction() == KeyEvent.ACTION_UP) {
           // Do your thing here
           return false;
   }
   return super.dispatchKeyEvent(event);
  }

Taken from my other answer @ : Android: Error popup on EditText doesn't move down when keyboard goes away


Custom Back Button:-

final RelativeLayout rrBack = (RelativeLayout) mCustomView.findViewById(R.id.rr_back);
        rrBack.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {

                MyApplication.getInstance().getRequestQueue().cancelAll(FEED_DETAIL_TAG_REQUEST);
                InputMethodManager imm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
                imm.hideSoftInputFromWindow(rrBack.getWindowToken(), 0);

            }
        });
0

精彩评论

暂无评论...
验证码 换一张
取 消