在EditText视图中添加手势以仅显示键盘

时间:2018-03-15 19:46:32

标签: java android android-studio android-edittext

我希望键盘只在EditText被点击两次时显示,而不是一次,因为它通常会发生。

1 个答案:

答案 0 :(得分:0)

你的xml文件应该是这样的。

<EditText
            android:id="@+id/editText"
            android:layout_width="match_parent"
            android:hint="Type Here"
            android:focusable="false"
            android:layout_height="wrap_content" />

在java文件中这样做。

int count = 0;
EditText editText;
// If you are doing in Fragment
editText = (EditText) rootView.findViewById(R.id.editText);
// If you are doing in Activity
editText = (EditText) findViewById(R.id.editText);
editText.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                checkTheNumberOfTap();
            }
        });

private void checkTheNumberOfTap() {
      count++;
      Log.e("Count ", " is " + count);
      if(count==2) {
          // Method to show the Keyboard
          editText.setFocusable(true);
          // If you are in Fragment
          InputMethodManager imm = (InputMethodManager) getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
          // If you are in Activity
          InputMethodManager imm =(InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
          imm.toggleSoftInput(InputMethodManager.SHOW_FORCED,0);
        }
    }