java - Android 中 Thread.sleep 方法的替代方法

标签 java android

我有这个按钮,点击它会将我在文本字段中输入的详细信息保存到 Google App Engine,在调用该 onClickListener 之后,我有一个启动新 Activity 的 Intent ,它显示我刚刚输入的详细信息。 这是为此的代码:

submitButton.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            if(v.getId() == R.id.userDetailsCaptureButton) {
                new EndpointsTask().execute(getApplicationContext());
            }

            startActivity(userProfileDisplayIntent);
        }
    });

现在我希望能够在调用 new EnpointsTask().execute(getApplicationContext) 之后等待几秒钟再调用 startActivity。我读到使用 Thread.sleep 会导致 UI 卡住,因此不适合这种情况。还有哪些其他选择?

最佳答案

解决方案是使用具有可运行对象的处理程序并使用方法“postDelayed”。示例:

new Handler().postDelayed(new Runnable() {
    public void run () {
        // Do delayed stuff!
    }
}, 5000L); //5 seconds delay 

关于java - Android 中 Thread.sleep 方法的替代方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21680608/

相关文章:

android - 房间持久性库 : attempt to re-open an already-closed object

java - 在 GlassFish Server 上创建并运行应用程序客户端

java - 通过 JDBC URL 使用 TestContainers DB 但与 @Rule 一起使用时出错

android - 如何删除android Activity 标签( Activity 标题)和标签栏?

java.lang.StringIndexOutOfBoundsException : when using PolyUtil. 解码

android - 我的应用程序仍然无法在没有 SIM 卡存储的平板电脑上显示,为什么?

Android - 将 GestureDetector 添加到 webview

java - lambda 表达式中的 AtomicInteger 变量

JavaApplet与Socket Server,刷新页面不会关闭端口

java - 图像处理java