如何允许将内容粘贴到空的EditText中?

6

当我长按空的EditText时,粘贴建议弹出框不会出现(非空时可以正常显示)。

XML

<EditText
    android:layout_width="0dp"
    android:layout_height="fill_parent"
    android:layout_weight="1"
    android:gravity="right"
    android:textSize="50sp"
    android:inputType="numberDecimal"
    android:id="@+id/text"/>

触碰EditText的代码
editText.setRawInputType(InputType.TYPE_NULL);
if (Build.VERSION.SDK_INT >= 11) {
    editText.setTextIsSelectable(true);
} else {
    editText.setFocusable(true);
}

2
请详细说明您的问题 - koutuk
@aikrikunov95 你解决了这个问题吗? - Rahul Kumar Dubey
4个回答

2

您是否尝试先复制数据?我刚刚在我的应用程序上尝试了一下,没有做任何事情,我复制后就会出现折叠对话框。如果我没有复制任何内容,我就不会有弹出窗口(这是正常的)。


1
在我的情况下,问题出在负边距上。去掉它就可以了,一切正常。

非常感谢,这解决了我多年来一直在追寻的问题。请随意在此发布答案,我会将其标记为正确答案 https://stackoverflow.com/questions/63538844/why-is-the-paste-option-missing-from-an-edittext-only-for-some-users - casolorz

0

添加这个并重试:

android:textIsSelectable="true"
android:cursorVisible="false"

所以你的布局将包含:

<EditText
   android:layout_width="0dp"
   android:layout_height="fill_parent"
   android:layout_weight="1"
   android:gravity="right"
   android:textSize="50sp"
   android:inputType="numberDecimal"
   android:id="@+id/text"
   android:textIsSelectable="true"
   android:cursorVisible="false"/>

如果你设置了 android:cursorVisible="true",那么只有在该字段非空时才能粘贴。


0
尝试运行这段代码,如果可以的话,请给我反馈哦 :D XML 代码
  android:inputType="none"
android:textIsSelectable="true"

Java 代码

textView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            ClipboardManager cm = (ClipboardManager)context.getSystemService(Context.CLIPBOARD_SERVICE);
            cm.setText(textView.getText());
            Toast.makeText(context, "Copied to clipboard", Toast.LENGTH_SHORT).show();
        }
    });

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接