2012-05-11 12 views
14

मेरे पास गतिविधि में एक सूची दृश्य है, और प्रत्येक आइटम में, मैं अपना टेक्स्ट दिखाने के लिए एक संपादन टेक्स्ट डालता हूं। मुझे पाठ को कॉपी करने के लिए हैंडल खींचने की आवश्यकता है & टेक्स्ट कॉपी करें, लेकिन टेक्स्ट संपादित नहीं कर सकता। एंड्रॉइड आईसीएस पर, मैं यह कैसे कर सकता हूं?एडिटटेक्स्ट को चुनने योग्य कैसे करें लेकिन एंड्रॉइड आइस क्रीम सैंडविच पर संपादन योग्य नहीं है?

उत्तर

3

मैंने इस समस्या का समाधान किया।
बस इस तरह TextView सेट:

text.setTextIsSelectable(true); 
+0

कॉल को एपीआई 11 –

4

मुझे लगता है कि आप ऑनकेडाउन() विधि को ओवरराइड कर सकते हैं, इसे कुछ भी नहीं कर सकते लेकिन सच साबित कर सकते हैं। इसे कीबोर्ड से कीप्रेस को पकड़ना चाहिए और संपादन टेक्स्ट में टेक्स्ट में जाने से पहले उन्हें अस्वीकार करना चाहिए।

संभव है कि आप भी try setting editable इस

android:editable="false" 
EditText पर अपने XML लेआउट में

तरह गलत पर। हालांकि मुझे यकीन नहीं है कि यह आपको अभी भी हाइलाइट और कॉपी करने देगा, लेकिन यह एक शॉट के लायक है।

+1

धन्यवाद, टिम! लेकिन एंड्रॉइड: संपादन योग्य एंड्रॉइड आइस क्रीम सैंडविच पर बहिष्कृत है। – Limp

+0

क्या उन्होंने एक नोट छोड़ दिया जो आपको बताता है कि इसके बजाय क्या उपयोग करना है? – FoamyGuy

+1

हां, उन्होंने मुझे टेक्स्टव्यू का उपयोग करने के बजाय कहा। लेकिन TextView का चयन नहीं किया जा सकता है। – Limp

14

text.setTextIsSelectable(true) एपीआई 11. आवश्यकता का उपयोग कर कम एपीआई उन लोगों के लिए: एक्सएमएल उपयोग में:

android:inputType="none" 
android:textIsSelectable="true" 

यह आपके EditText असंपादित लेकिन चयन कर देगा।

+0

की आवश्यकता है मैं पुष्टि कर सकता हूं कि एपीआई 10 (2.3.4 और 2.3.6 पर परीक्षण) पर उपरोक्त दो पंक्तियां काम नहीं करती हैं। एडिटटेक्स्ट अभी भी संपादन योग्य है और कीबोर्ड पॉप आउट हो गया है .. – Bruce

+0

फिर समाधान क्या है? –

+1

http://stackoverflow.com/a/20173020/1241783 पर पोस्ट किया गया मेरा पूरा उत्तर देखें। हैकी रास्ते पर बहुत गर्व नहीं है, लेकिन यह एकमात्र तरीका है जिसे मैं अभी जानता हूं। अगर कोई एपीआई संस्करण <10. धन्यवाद के लिए एक बेहतर तरीका जानता है तो मुझे बताएं। – Bruce

0

Althouth android:editableपदावनत है और एक प्रकार का वृक्ष, यह काम करने के लिए प्रतीत नहीं होता inputType उपयोग करने के लिए पता चलता है। तो android:editable="false" स्पष्ट रूप से सभी एंड्रॉइड संस्करणों के लिए सबसे अच्छा संभव समाधान है।

<EditText 
    android:id="@+id/editText" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:editable="false" 
    android:textIsSelectable="true" 
    tools:ignore="Deprecated" /> 
संबंधित मुद्दे