如何在不使用键盘onLongPress的情况下在TextInput上打开上下文菜单(React Native)

时间:2019-06-13 02:47:55

标签: android react-native react-native-android

在聊天(响应本机)应用程序中,我需要能够onLongPress在不使用键盘的情况下打开上下文菜单,但是在正常的轻按/短按下打开键盘。就像外面的大多数信使一样。

TextInput在模糊(未聚焦)上的当前行为,onLongPress会弹出上下文菜单和键盘。

2 个答案:

答案 0 :(得分:5)

您可以通过多种方式完成

  1. 从AndroidManifest文件中禁用它,如下所示 在您需要禁用键盘的活动中,应用 windowSoftInputMode 作为“ stateHidden”

    android:windowSoftInputMode =“ stateHidden”

  2. 从XML文件更改 您可以在editText上放置focusable = false

    android:focusable =“ false”

答案 1 :(得分:3)

这是可以解决您问题的方法,

TextView textView = (TextView) findViewById(R.id.textView1);
textView.isClickable();

textView.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        Toast.makeText(getBaseContext(), "Clicked", Toast.LENGTH_SHORT).show();
    }
});

textView.setOnLongClickListener(new View.OnLongClickListener() {
    @Override
    public boolean onLongClick(View v) {
        // TODO Auto-generated method stub
        Toast.makeText(getBaseContext(), "Long Clicked", Toast.LENGTH_SHORT).show();
        return true;
    }
});
OnLongClickLitener内的

返回true表示您不需要进一步处理。