如何在edittext不为空时自动按回车键?

How to automatically press enter key when edittext is not null?

我正在制作一个 EditText 和我从 Firebase 获得的值,如果 edittext 不为空则可能会自动按下输入键

private void init(){
    Log.d(TAG, "init: initializing");

    if (mSearchText != null){
       what must i write here?
    }

    mSearchText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
        @Override
        public boolean onEditorAction(TextView textView, int actionId, KeyEvent keyEvent) {
            if(actionId == EditorInfo.IME_ACTION_SEARCH
                    || actionId == EditorInfo.IME_ACTION_DONE
                    || keyEvent.getAction() == KeyEvent.ACTION_DOWN
                    || keyEvent.getAction() == KeyEvent.KEYCODE_ENTER){

                //execute our method for searching
                geoLocate();
            }

            return false;
        }
    });

你可以试试这个

EditText editText;
BaseInputConnection inputConnection = new BaseInputConnection(editText, true);
inputConnection.sendKeyEvent(new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_POUND));

read more

[1] 你可以试试下面的代码

String yourtext=mSearchText.getText().toString().trim();
if(!TextUtils.isEmpty(yourtext)) //or else you can use  if(yourtext!=null && !yourtext.equalsIgnoreCase(""))
{
    mSearchText.setOnEditorActionListener(new TextView.OnEditorActionListener() {
        @Override
        public boolean onEditorAction(TextView textView, int actionId, KeyEvent keyEvent) {
            if(actionId == EditorInfo.IME_ACTION_SEARCH
                    || actionId == EditorInfo.IME_ACTION_DONE
                    || keyEvent.getAction() == KeyEvent.ACTION_DOWN
                    || keyEvent.getAction() == KeyEvent.KEYCODE_ENTER){

                //execute your method for searching
                geoLocate();
            }

            return false;
        }
    });
}

[2] 否则你可以使用这个实现你的功能(直接方法调用)

String yourtext=mSearchText.getText().toString().trim();
if(!TextUtils.isEmpty(yourtext)) //or else you can use  if(yourtext!=null && !yourtext.equalsIgnoreCase(""))
{
     //execute your method for searching
                geoLocate();
}