Almak istediğim fling
benim Android uygulamasında jest algılama çalışma.
Ne var GridLayout
9 ImageView
s içeren bir . Kaynak burada bulunabilir: Romain Guys'ın Izgara Düzeni .
Aldığım bu dosya Romain Guy'ın Photostream uygulamasından ve sadece biraz uyarlanmış.
Basit tıklama durumu onClickListener
için sadece ImageView
eklediğim her biri için activity
uygulayan ana olarak ayarlamanız gerekir View.OnClickListener
. Bir şeyi tanıyan bir şeyi uygulamak son derece daha karmaşık görünüyor fling
. Sanırım bunun nedeni olabilir views
mi?
Etkinliğim uygularsa , bunu eklediğim görünümler veya
OnGestureListener
hareket dinleyicisi olarak nasıl ayarlayacağımı bilmiyorum .Grid
Image
public class SelectFilterActivity extends Activity implements View.OnClickListener, OnGestureListener { ...
Eğer aktivitem uygularsa,
OnTouchListener
o zaman hiçbironFling
yöntemim yokoverride
(parametrelerin iki olayı var, fırlatmanın kayda değer olup olmadığını belirlememe izin veriyor).public class SelectFilterActivity extends Activity implements View.OnClickListener, OnTouchListener { ...
Bir gelenek yaparsam
View
,GestureImageView
bu şekilde uzarsaImageView
, birfling
görünümün gerçekleştiğini nasıl anlatacağımı bilmiyorum . Her durumda, bunu denedim ve ekrana dokunduğumda yöntemler çağrılmadı.
Gerçekten sadece bu görüşler arasında çalışan somut bir örneğe ihtiyacım var. Bunu ne, ne zaman ve nasıl eklemeliyim listener
? Tek tıklamaları da tespit edebilmem gerekiyor.
// Gesture detection
mGestureDetector = new GestureDetector(this, new GestureDetector.SimpleOnGestureListener() {
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
int dx = (int) (e2.getX() - e1.getX());
// don't accept the fling if it's too short
// as it may conflict with a button push
if (Math.abs(dx) > MAJOR_MOVE && Math.abs(velocityX) > Math.absvelocityY)) {
if (velocityX > 0) {
moveRight();
} else {
moveLeft();
}
return true;
} else {
return false;
}
}
});
Flings yakalamak için ekranımın üstüne şeffaf bir görünüm koymak mümkün mü?
inflate
XML'den alt resim görünümlerime seçmezsem , GestureDetector
oluşturucu parametresini oluşturduğum yeni bir alt sınıfa geçirebilir ImageView
miyim?
Bu fling
algılama için çalışmak için almaya çalışıyorum çok basit bir etkinliktir : SelectFilterActivity (Fotoğraf akışından uyarlanmış) .
Bu kaynaklara bakıyordum:
Şimdiye kadar hiçbir şey benim için işe yaramadı ve bazı işaretçiler umuyordum.