2011-09-09 9 views
6

मैं एक सैमसंग गैलेक्सी एस 2 का उपयोग कर रहा है और कोशिश की है:क्लिपबोर्ड साफ़ (एपीआई 10)

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

और

clipboard.setText(""); 

यह काम नहीं किया। विचार?

+0

क्या यह दुर्घटनाग्रस्त हो गया? अपवाद लॉग? क्या यह अभी काम नहीं करता है? क्या आपने कुछ और करने की कोशिश की है? – Jack

+0

कोई दुर्घटना नहीं - बस क्लिपबोर्ड को साफ़ नहीं किया। लगता है कि टचविज़ ने अपने मल्टी-आइटम क्लिपबोर्ड को लागू किया है और इसलिए क्लिपबोर्ड प्रबंधक को सभी एपीआई कॉलों को अनदेखा करता है। जब मैं setPrimaryClip का उपयोग करने की कोशिश करता हूं तो यह NoClassDef या कुछ ऐसा नहीं है (मैंने अब टचविज़ अनइंस्टॉल किया है) क्योंकि यह एपीआई 10 में नहीं है। मैं बस उम्मीद कर रहा था कि टचविज़ वास्तव में इस क्लिपबोर्ड एपीआई को अनदेखा कर रहा है। – timothyjc

उत्तर

2

क्या आपने कोशिश की है .setPrimaryClip (क्लिपडाटा क्लिप)? प्रलेखन पढ़ता है:

सार्वजनिक शून्य setPrimaryClip (ClipData क्लिप)

के बाद से: एपीआई स्तर 11 सेट क्लिपबोर्ड पर वर्तमान प्राथमिक क्लिप। यह क्लिप है जो सामान्य कट और पेस्ट ऑपरेशंस में शामिल है। पैरामीटर्स

क्लिप क्लिप किए गए डेटा आइटम को सेट करने के लिए।

the docs के अनुसार, setText() को बहिष्कृत किया गया है।

मुझे पता है कि यह प्रश्न पुराना है, लेकिन यह एक कोशिश के लायक है।

+1

हाँ - वह विधि केवल API 11 से है। एसजीएस 2 2.3 चल रहा है, इसलिए यह उपलब्ध नहीं है। – timothyjc

+0

setPrimaryClip सैमसंग एस 4 और एस 5 – oscarthecat

3

वे सैमसंग गैलेक्सी के साथ एक बग है। यह क्लिपबोर्ड को रिक्त मान पर सेट करने को स्वीकार नहीं करता है। आप इसे बजाय किसी स्थान पर सेट करने का प्रयास कर सकते हैं।

clipboard.setText(" "); 

अधिक जानकारी के लिए v3.0 के लिए जाँच this

+0

पर काम नहीं कर रहा है मैं अपने दोस्त के स्टॉक एसजीएस 2 और परीक्षण का पकड़ लेगा ... मेरे पास साइनोजनमोड एटीएम है ... – timothyjc

0

स्पष्ट क्लिप बोर्ड 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(""); 
        } 

       } 
      }); 
संबंधित मुद्दे