Ответ 1
Попробуйте что-то вроде этого:
private Thread thread;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.layoutxml);
final MyActivity myActivity = this;
thread= new Thread(){
@Override
public void run(){
try {
synchronized(this){
wait(3000);
}
}
catch(InterruptedException ex){
}
// TODO
}
};
thread.start();
}
@Override
public boolean onTouchEvent(MotionEvent evt)
{
if(evt.getAction() == MotionEvent.ACTION_DOWN)
{
synchronized(thread){
thread.notifyAll();
}
}
return true;
}
Он ждет 3 секунды, чтобы продолжить, но если пользователь коснется экрана, поток уведомляется и перестает ждать.