我有一个文本字段和一个按钮。按下按钮后,我会立即将其复制到要复制的文本字段的文本中。如何才能做到这一点?当我搜索它(How to copy text programmatically in my Android app?)时,我读到了一个ClipboardManager方法,但有传言称它也被弃用了。我应该避免吗?谢谢
答案 0 :(得分:2)
Honeycomb弃用了android.text.ClipboardManager
并介绍了android.content.ClipboardManager
。
您应该检查android.os.Build.VERSION.SDK_INT
是否至少android.os.Build.VERSION_CODES.HONEYCOMB
,因此请使用其中一个。
if (android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.HONEYCOMB)
{
// Old clibpoard
android.text.ClipboardManager clipboard = (android.text.ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE);
clipboard.setText("the text");
}
else
{
android.content.ClipboardManager clipboard = (android.content.ClipboardManager)getSystemService(Context.CLIPBOARD_SERVICE);
android.content.ClipData clipData = android.content.ClipData.newPlainText("PlainText", "the text");
clipboard.setPrimaryClip(clipData);
}
答案 1 :(得分:1)
尝试link中的答案..它说
int sdk = android.os.Build.VERSION.SDK_INT;
if(sdk < android.os.Build.VERSION_CODES.HONEYCOMB) {
android.text.ClipboardManager clipboard = (android.text.ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
clipboard.setText("text to clip");
} else {
android.content.ClipboardManager clipboard = (android.content.ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
android.content.ClipData clip = android.content.ClipData.newPlainText("text label","text to clip");
clipboard.setPrimaryClip(clip);
}
答案 2 :(得分:-1)
Copy/Paste Offical Tutoiral 看看
相关代码:
ClipboardManager clipboard = (ClipboardManager)
getSystemService(Context.CLIPBOARD_SERVICE);
Copy the data to a new ClipData object:
For text
// Creates a new text clip to put on the clipboard
ClipData clip = ClipData.newPlainText("simple text","Hello, World!");