Hier ist mein Code - PadsGrid ist ein Viewgroup -:Warum funktioniert das Touch-Ereignis auf dem Kind meiner ViewGroup nicht?
public class Emc_PadControllerActivity extends Activity implements OnTouchListener {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final PadsGrid pg = new PadsGrid(this, 8, 5, PadType.SMALL);
for (int i=0;i<pg.getChildCount();i++){
final PadController pc;
pc=(View) pg.getChildAt(i);
pc.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View arg0, MotionEvent arg1) {
pc.onTouch(arg0,arg1);
return true;
}});;
}
setContentView(pg);
}
@Override
public boolean onTouch(View v, MotionEvent event) {
v.onTouchEvent(event);
return false;
}
}
Dabei is'nt die OnTouch Ereignis meiner Ansichten nennen, warum ich sie berühren, warum?
Ok, aber ich wollte die Ansichten direkt cath der onTouchEvent. Weil auf diese Weise Multitouch-Ereignisse schneller und einfacher behandelt werden können! – nonozor
In diesem Fall sollten Sie in der Lage sein 'pc.setOnTouchListener (pc.onTouch());' ... Ich gehe davon aus, dass die PC-Klasse eine onTouch() -Methode hat. – cstrutton
Ja natürlich, aber wie man die zwei Argumente übergibt: Ereignis und Sicht zur onTocuh Methode? – nonozor