2012-05-11 15 views

cevap

3

Bu sorunu çözdüm.
Bunun gibi TextView'un ayarlayın: xml Kullanımda:

text.setTextIsSelectable(true); 
+0

numaralı telefon görüşmesi için API 11 –

4

Sanırım onKeyDown() yöntemini geçersiz kılabilirsiniz, hiçbir şey yapmamaya çalışın, ancak true yapın. Klavyeden tuşlara basmalı ve EditText'teki metne gidebilmeleri için bunları reddetmelidir.

Olabilir de try setting editable xml düzeninde EditText bu

android:editable="false" 

gibi false. Ancak, bunun hala vurgulanıp kopyalanmasına izin verip vermeyeceğinden emin değilim, ama bu bir atıştı.

+1

Teşekkürler, Tim! Ama android: Android Ice Cream Sandwich'de düzenlenebilir hale getirildi. – Limp

+0

bunun yerine ne kullanacağınızı söyleyen bir not bıraktılar mı? – FoamyGuy

+1

Evet, bunun yerine TextView kullanmamı söylediler. Ancak TextView seçilemez. – Limp

14

text.setTextIsSelectable(true) alt API en kullananlar için API 11. gerektirir

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

Bu EditText düzenlenemez ama seçilebilir yapacaktır.

+0

API 10 üzerinde (2.3.4 ve 2.3.6'da test edilmiştir) yukarıdaki iki satırın çalışmadığını doğrulayabilirim. EditText hala düzenlenebilir ve klavye dışarı çıkar .. – Bruce

+0

O zaman çözüm nedir? –

+1

http://stackoverflow.com/a/20173020/1241783 adresinde yayınlanan yanıtın tamamına göz atın. Hayalet yoluyla gurur duymuyorum ama şimdilik bildiğim tek yol bu. Birisi API sürümü <10 için daha iyi bir yol biliyorsa bana bildirin. Teşekkürler! – Bruce

0

Althouth android:editablekullanımdan kaldırıldı ve Lint, İşe görünmüyor inputType kullanmayı önerir. Yani android:editable="false" görünüşte tüm android sürümleri için mümkün olan en iyi çözümdür.

<EditText 
    android:id="@+id/editText" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:editable="false" 
    android:textIsSelectable="true" 
    tools:ignore="Deprecated" /> 
İlgili konular