OnTouchEvent游戏指南

时间:2011-01-20 20:46:17

标签: android

这是一个缺乏经验的程序员的基本问题。我在Android应用程序中制作游戏。显然它需要很多触摸事件。使用if / else语句,这个函数似乎变得非常大。我想要一些关于如何编写onTouchEvent方法的指南。有人能指出我有任何一个有onTouchEvent方法的例子,它的结构如何?

1 个答案:

答案 0 :(得分:1)

Java中最好的设计模式之一是观察者(监听器),我建议使用它而不是onTouchEvent()。原因是您可以将事件的处理与原始控件本身(即Button)分离,并且您不必对控件进行子类化。

这是一个小例子:

MyEventHandler myEvHandler = new MyEventHandler();
Button button = new Button();
button.setOnClickListener(myEvHandler);

// Basic Object Class called MyEventHandler
class MyEventHandler implements OnClickListener
{
    public void onClick(View v)
    {
        if (v instanceof Button)
        {
            // handle the click event here.
        }       
    }
}

请注意,您不必将click事件逻辑放在按钮中,最重要的是,您不必创建自定义Button子类。

您可以为任何视图和任何UI事件执行相同的操作。