【问题标题】:How to get the text from a ClipData object?如何从 ClipData 对象中获取文本?
【发布时间】:2017-02-15 12:54:31
【问题描述】:

在Android中,获取剪贴板文本used to be simple的方式:

ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE); 
String text = clipboard.getText();

getText() 方法现已弃用,documentation 表示改用getPrimaryClip()

getText()

此方法在 API 级别 11 中已弃用。请改用 getPrimaryClip()。这会检索主剪辑并尝试将其强制转换为字符串。

但是getPrimaryClip()返回一个ClipData对象,不清楚如何获取这个对象中的文本内容。如何实现?

【问题讨论】:

    标签: android clipboard


    【解决方案1】:

    使用此代码:

    public CharSequence getText() {
        ClipData clip = getPrimaryClip();
        if (clip != null && clip.getItemCount() > 0) {
            return clip.getItemAt(0).coerceToText(mContext);
        }
        return null;
    }
    

    Source

    【讨论】:

      猜你喜欢
      • 2014-03-12
      • 2017-06-16
      • 1970-01-01
      • 1970-01-01
      • 2013-11-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多