Java中与[self performSelector:foo afterDelay:2]相等的方法是什么?

7

我正在开发一个安卓应用程序,需要从一个活动转到另一个活动。在这之前,我需要更改按钮的颜色,然后延迟一段时间,最后调用同一个函数(就是我现在所在的函数)。

在Objective-C中,可以使用 [self performSelector:foo afterDelay:2] 来实现。

因此,我需要知道它在Java中的等效写法。

1个回答

9
对于Android中的延迟操作,我建议使用Android Handler及其postDelayed()方法
将一个处理程序作为Activity的成员变量创建:
private Handler mHandler = new Handler(); 

然后,按照以下方式添加延迟操作:
mHandler.postDelayed(new Runnable() { 
        public void run() { 
            //Do you thing here
        } 
    },2000);

请注意,如果您还没有处理程序,则不一定需要为此创建一个。postDelayed() 也可用于任何小部件(例如 Button)。 - CommonsWare
1
run() 函数在被调用的类的相同线程还是不同线程中执行?如果是不同线程,有没有办法使它在相同线程中运行? - Ryan H.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接