2011-09-09 6 views
6

私はサムスンギャラクシーS2を使用して、以下を試してみましたよ:クリアクリップボード(API 10)

import android.text.ClipboardManager; 
ClipboardManager clipboard = (ClipboardManager)context.getSystemService(Context.CLIPBOARD_SERVICE); 
clipboard.setText(null); 

clipboard.setText(""); 

それは動作しませんでした。アイデア?

+0

クラッシュしましたか?例外ログ?それはうまくいきませんでしたか?あなたは何か試しましたか? – Jack

+0

クラッシュなし - クリップボードをクリアしていません。 TouchWizは独自のマルチアイテムクリップボードを実装しているようで、クリップボードマネージャへのすべてのAPI呼び出しを無視します。 TouchWizが本当にこのクリップボードAPIを無視しているという確信がありましたか、いくつかの簡単なやりかたがあることを期待していましたが、NoClassDefなどでクラッシュしました(TouchWizを今すぐアンインストールしました)。 – timothyjc

答えて

2

.setPrimaryClip(ClipData clip)を試しましたか?ドキュメントは読み取ります

ます。public void setPrimaryClip(ClipDataクリップ)

以降:APIレベル11を設定し、クリップボード上の現在のプライマリのクリップ。 これは、通常の切り取りと貼り付け操作に関係するクリップです。 パラメータ

clip設定するクリップされたデータ項目。

the docsによれば、setText()は推奨されません。

私はこの質問が古いことを知っていますが、試してみる価値があります。

+1

ええ - その方法はAPI 11からのみです。SGS2は2.3を実行しているため利用できません。 – timothyjc

+0

setPrimaryClipはsamsung s4とs5で動作していません – oscarthecat

3

彼らはSamsung Galaxyのバグです。クリップボードを空白の値に設定することはできません。代わりにスペースに設定してみてください。詳細について

clipboard.setText(" "); 

V3.0のためthis

+0

私の友人の在庫SGS2とテストを保持します...私のCyanogenModはatmです – timothyjc

0

クリアクリップBORDをチェックAPI-11

clipboard1 =(ClipboardManager)getSystemService(CLIPBOARD_SERVICE)。

clipboard1 
      .addPrimaryClipChangedListener(new OnPrimaryClipChangedListener() { 

       public void onPrimaryClipChanged() { 
        copyText = (String) clipboard1.getText(); 
        Log.d("Copytext", copyText); 
        Toast.makeText(javaButtonTest.this, copyText, Toast.LENGTH_LONG).show(); 
        //ClipboardManager clipboard = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE); 
        if (clipboard1.hasText()) { 
         copyText = (String) clipboard1.getText(); 
         clipboard1.setText(""); 
        } 

       } 
      }); 
関連する問題