首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在我的Android应用程序中以编程方式复制文本?

如何在我的Android应用程序中以编程方式复制文本?
EN

Stack Overflow用户
提问于 2008-10-27 01:13:32
回答 11查看 114.4K关注 0票数 253

我正在构建一个Android应用程序,我想复制一个EditText小部件的文本值。用户可以先按Menu+A,然后按Menu+C来复制值,但是我该如何以编程方式完成此操作呢?

EN

回答 11

Stack Overflow用户

回答已采纳

发布于 2008-10-26 17:20:44

使用ClipboardManager#setPrimaryClip方法:

代码语言:javascript
复制
import android.content.ClipboardManager;

// ...

ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE); 
ClipData clip = ClipData.newPlainText("label", "Text to copy");
clipboard.setPrimaryClip(clip);

ClipboardManager API reference

票数 464
EN

Stack Overflow用户

发布于 2012-06-13 17:56:11

因此,每个人都同意如何做到这一点,但由于没有人想给出一个完整的解决方案,这里是这样的:

代码语言:javascript
复制
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);
}

我假设您在清单中声明了如下内容:

代码语言:javascript
复制
<uses-sdk android:minSdkVersion="7" android:targetSdkVersion="14" />
票数 217
EN

Stack Overflow用户

发布于 2011-10-31 20:01:30

代码语言:javascript
复制
public void onClick (View v) 
{
    switch (v.getId())
    {
        case R.id.ButtonCopy:
            copyToClipBoard();
            break;
        case R.id.ButtonPaste:
            pasteFromClipBoard();
            break;
        default:
            Log.d(TAG, "OnClick: Unknown View Received!");
            break;
    }
}

// Copy EditCopy text to the ClipBoard
private void copyToClipBoard() 
{
    ClipboardManager clipMan = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
    clipMan.setPrimaryClip(editCopy.getText());
}

你可以试试这个..

票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/238284

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档