我在Eclipse中使用了Android开发人员工具,使用Java进行编程,只要按下按钮,我需要使对象在屏幕上移动。我一直在研究几个小时,而且我找不到任何方法来完成这个任务。我试过运行的线程,它经常崩溃或看似不执行。我也尝试了一个onClickListener
,它读取按钮状态并使用它来确定按钮是否仍然按下。我目前正在使用while循环,但这只是冻结了程序。我相信这是最好的方法,并且我试图使用Thread.sleep来限制每秒的迭代次数,因为我认为这是它冻结的原因。我在正确的轨道上还是我在左边的路上?下面是一个代码片段:如何在按下按钮时使一段代码循环,并在按钮不再按下时停止它?
rightButton.setOnClickListener(new OnClickListener()
{
@Override
public void onClick(View arg0)
{
while(arg0.isPressed())
{
mover.updateCoordinates(1, 0);
}
}
});
究竟崩溃,请发表logcat的也 – CRUSADER 2013-05-12 04:33:58
你的按钮事件监听器中while循环的想法并不好。还原回旧的基于线程的代码,在此处发布代码并描述崩溃的位置/时间 – 2013-05-12 04:36:49
在Android上,您也可以使用asysnc任务。你读过这篇文章吗? http://android-developers.blogspot.com/2009/05/painless-threading.html – 2013-05-12 04:39:16