これらは、Androidでクリップボードからテキスト形式クリップボードとペーストするコピープレーンテキストに完全クロスプラットフォームと例外フリー方法があります。
@SuppressLint("NewApi") @SuppressWarnings("deprecation")
public void copy(String plainText)
{
if (android.os.Build.VERSION.SDK_INT < 11)
{
android.text.ClipboardManager clipboard = (android.text.ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
if (clipboard != null)
{
clipboard.setText(plainText);
}
}
else
{
android.content.ClipboardManager clipboard = (android.content.ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
if (clipboard != null)
{
android.content.ClipData clip = android.content.ClipData.newPlainText("text", plainText);
clipboard.setPrimaryClip(clip);
}
}
}
@SuppressLint("NewApi") @SuppressWarnings("deprecation")
public String paste()
{
if (android.os.Build.VERSION.SDK_INT < 11)
{
android.text.ClipboardManager clipboard = (android.text.ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
if (clipboard != null)
{
return (String) clipboard.getText();
}
}
else
{
android.content.ClipboardManager clipboard = (android.content.ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
if (clipboard != null && clipboard.getPrimaryClip() != null && clipboard.getPrimaryClip().getItemCount() > 0)
{
return (String) clipboard.getPrimaryClip().getItemAt(0).getText();
}
}
return null;
}
そして、どのように私は有効にしますTextViewの標準コピー貼り付け(EditTextに表示されているようなもの)?これはクリップボードにコピーされますが、私は標準的なメカニズムが必要です。 P.D.私はそれのために新しいスレッドを作ります、それは別の質問です。 – Ixx
新しい質問のスレッドはこちら:http://stackoverflow.com/questions/10386084/how-do-i-enable-standard-copy-paste-for-a-textview-in-android – Ixx