Normalde, EditTextnormal davranışıyla maksimum uyumluluk istersiniz .
Eğer gereken Yani değil kullanmak android:focusable="false"gibi evet, görünüm sadece kötü görünüyor ki artık odaklanabilir olmayacaktır. Arka plan çizilebilir, örneğin artık "basılı" durumunu göstermeyecektir.
Bunun yerine yapmanız gereken şey şudur:
myEditText.setInputType(InputType.TYPE_NULL);
myEditText.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
myEditText.setOnFocusChangeListener(new View.OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
if (hasFocus) {
}
}
});
Giriş türünü olarak ayarlayarak, TYPE_NULLyazılım klavyesinin açılmasını engellersiniz.
Ayarlayarak OnClickListenerve OnFocusChangeListener, kendi iletişim daima açılacaktır emin zaman içine kullanıcı tıkladığında EditTextalanında, hem de odak (İlk tıklama) ve müteakip tıklamalarının kazanır zaman.
Sadece ayarlamak android:inputType="none"veya setInputType(InputType.TYPE_NULL)her zaman yeterli değildir. Bazı cihazlar android:editable="false"için, kullanımdan kaldırılmış olmasına rağmen XML olarak da ayarlamalısınız . Artık çalışmıyorsa, sadece yok sayılacaktır (desteklenmeyen tüm XML öznitelikleri gibi).