8

テキストをクリップボードにコピーする際に問題が発生しました。私はこのようにコピーしようとします:

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

しかし、問題は次をスローするコンパイラにあります。

Call requires API level 11 (current min is 7): android.content.ClipboardManager#setPrimaryClip line 245 Android Lint Problem.

android API <11でテキストをクリップボードにコピーするにはどうすればよいですか?コピーする前にAndroidのAPIバージョンを確認しようとすると、コードがコンパイルされません。多分誰かがこの質問への答えを知っていますか?

4

1 に答える 1

27

リファレンス:Androidアプリでプログラムでテキストをコピーする方法

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

追加: プロジェクトをクリーンアップしてビルドする必要があるかもしれません:)

于 2012-10-11T20:09:47.070 に答える