3

テキストをクリップボードにコピーする通知アクション(Android 4.1以降の場合)を実行しようとしています。コピーアンドペースト機能に関するリファレンスを読みましたが、次のようになりました。

        ClipboardManager clipboard = (ClipboardManager)
            mContext.getSystemService(Context.CLIPBOARD_SERVICE);
    ClipData clip = ClipData.newPlainText("simple text","Hello, World!");

これをPendingIntentに入れるインテントに入れる方法がわかりません。

あなたが私にいくつかの例を与えてそれを説明することができれば-それは素晴らしいでしょう!私はAndroid開発の初心者です。前もって感謝します。

編集: 私はこれを見つけました:https ://stackoverflow.com/a/12601766/1866009しかし私はそれを正しく理解していません。

4

2 に答える 2

8

アンドロイド開発者の助けを借りて、問題はこのコードによって解決されました:

        BroadcastReceiver brCopy = new BroadcastReceiver() {

        @Override
        public void onReceive(Context context, Intent intent) {
            ClipboardManager clipboard = (ClipboardManager)
                    mContext.getSystemService(Context.CLIPBOARD_SERVICE);
            ClipData clip = ClipData.newPlainText("label", "text");
            clipboard.setPrimaryClip(clip);
            Toast.makeText(mContext, "Copied!", Toast.LENGTH_SHORT).show();

        }
    };
    IntentFilter intentFilter = new IntentFilter("com.example.ACTION_COPY");
    mContext.registerReceiver(brCopy, intentFilter);

    Intent copy = new Intent("com.example.ACTION_COPY");
    PendingIntent piCopy = PendingIntent.getBroadcast(mContext, 0, copy, PendingIntent.FLAG_CANCEL_CURRENT);

    mBuilder.addAction(android.R.drawable.ic_menu_copy, "Copy", piCopy);
于 2013-01-12T15:12:36.360 に答える
4

Androidの通知アクションに関するこのチュートリアルを確認してください:

http://www.vogella.com/articles/AndroidNotifications/article.html

保留中のインテントを作成するときは、broadcastReceiverによって受信されるカスタムインテント(マニフェストで定義されています。ここの例)を指定してから、好きなように実行します(たとえば、クリップボードにコピーします)。

于 2013-01-12T11:44:36.113 に答える