如何在 Android 中为 TextView 启用标准复制粘贴?

新手上路,请多包涵

我想为 TextView 启用标准复制粘贴(与 EditText 相同)。我该怎么做?

我尝试使用不可编辑的 EditText,但效果不佳(有时它变得可编辑或未显示复制粘贴覆盖)。一般来说,这可能不是一个好方法。

需要从 API 7 开始的有效解决方案。

原文由 User 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 858
2 个回答

这适用于复制 pre-Honeycomb:

 import android.text.ClipboardManager;

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();
    }
});

原文由 User 发布,翻译遵循 CC BY-SA 3.0 许可协议

  1. 您必须首先在您的 activityfragment 上设置 FullScreen 主题!

@

 Override
    public void onAttach(@NonNull Context context) {
        super.onAttach(context);
        requireActivity().getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);
    }

layout.xmltextview 添加:

     android:textIsSelectable="true"

完毕!

原文由 Sana Ebadi 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题