GetX() ve getY() öğelerini bulabilirim. Ancak, bir TouchEvent e.get(), e.getY() koordinatlarının EditText UI öğesinin sınırları içinde olup olmadığını nasıl anlarım? GetX() ve getY() 'nin yüzer ama getHeight() olduğunu ve getWidth() ın int olduğunu fark ettim. Karşılaştırma yapmanıza yardımcı olmayacak ...Bir dokunma olayının EditText içine girip girmediğini nasıl anlarım?
cevap
Tam olarak ne yapmak istiyorsunuz? Sadece EditText'inize dokunup dokunmadığını tespit etmek isterseniz, EditText ... veya OnClickListener'a bir OnTouchListener ekleyin.
Düzenleme:
Rect editTextRect = new Rect();
myEditText.getHitRect(editTextRect);
if (!editTextRect.contains((int)event.getX(), (int)event.getY())) {
Log.d("test", "touch not inside myEditText");
}
Yoksa EditText bir dokunuş dinleyici hem ekleyin: dışarıda algılamak istiyorsanız, size EditText görünüme sahip verilmiş, daha sonra içeren görünümde dokunmatik olayını tespit edebilir ve kapsayıcıyı ve EditText öğesinden birinde false değerini döndürür, bu şekilde yakalanır ve üst öğeye iletilmez. Böylece, ebeveynin dinleyicisinde tespit ettiğiniz tüm dokunuşlar EditText'e ait olmayacaktır.
Bunun tersi. EditText dışında bir dokunma olayı olup olmadığını tespit edin. –
Fakat "içeride", "içeride" anlamına gelmiyor mu, yoksa ingilizcem yanlış mı? – Ixx
Tamam. Bence bu temel olarak doğru. Ama konteynerin ne alacağı konusunda açıklama istiyorum. Hata ayıklama, EditText gibi içerilen öğelerin dokunma olaylarını değiştirdiğini ve konteynere kabarmadıklarını gösterir. Kontrol kutuları vb. Gibi aktivitelerde bulunan diğer her eleman, kendi bölgelerine giren dokunma olayını da yutturur (kabarmaz). Belki de manifest içinde yer alan bir unsurun dokunma olaylarını balon etmesini söylemek için bir ayarlama mı yoksa bunu yapmak için bir yöntemi geçersiz kılmanız mı gerekiyor? –
- 1. ScrollView EditText içine atlar
- 2. Hizmet verilemeyen bileşen kaynak kodunu içine girip hata ayıklayamıyor
- 3. Nasıl inputType = "numberDecimal" ile EditText içine ipucu eklenir?
- 4. EditText -
- 5. MKMapView'da regionChange olayının MKMapView'ın programlı veya kullanıcı sürüklemesi olduğunu nasıl anlarım?
- 6. Bir Edittext
- 7. Bir görüntüleyici içindeki dokunma/dokunma olaylarını algılama
- 8. Bir Windows aygıtının etkin olup olmadığını nasıl anlarım?
- 9. EditText
- 10. JavaScript'te bulanıklık olayının oluşmasını nasıl zorlayabilirim?
- 11. ServiceHost Hatalı olayının nedenini nasıl bulabilirim?
- 12. : EditText
- 13. Sütunlamanın bittiğini nasıl anlarım?
- 14. Sayfa yenilendiğinde tıklama olayının yüklenmesini nasıl önlerim?
- 15. "(.). (.)" Yi nasıl anlarım?
- 16. Geçerli sekme düzeninde tıklama olayının nasıl ayarlanacağı
- 17. Özel anımsatıcı olayının nedenini çözme
- 18. UIImageView'da bir dokunma ve bekletme nasıl uygulanır?
- 19. EditText ipucu nasıl sarılmalı?
- 20. android - Edittext nasıl doldurulur?
- 21. EditText değişikliğini nasıl alabilirim?
- 22. Sağ taraftaki bir fullcalendar olayının rengi nasıl değiştirilir?
- 23. TextInputLayout etiketi, bir EditText
- 24. Bir kaydı neden #destroy() yapamadığımı nasıl anlarım?
- 25. Kullanıcının bir düğmeye basıp tıklamadığını nasıl anlarım?
- 26. Bir yazarın kapatılıp kapatılmadığını nasıl anlarım?
- 27. Bir Bölge'nin başarıyla güncellendiğini nasıl anlarım?
- 28. Cocos2d'de çoklu dokunma nasıl etkinleştirilir?
- 29. Tüm dokunma olayları nasıl engellenir?
- 30. Görüntüde dokunma dinleyicisi nasıl uygulanır?
Ne denediniz? I ** son derece ** [OnTouchListener belgeleri] (http://developer.android.com/reference/android/view/View.OnTouchListener.html) ... – Sam
Benim yazı düzenlenmiş okuma öneririz. – Ixx
Denediğim şey 'koddan önce düşün' denen bir şeydir. –