Android - 如何在Handler未完成延迟之前执行操作

时间:2014-08-23 21:02:00

标签: android handler

我有一个应用,用户可以根据喜欢/不喜欢评价帖子。 之后我用帖子的autor显示一个视图,并用另一篇文章更新内容。

我现在使用的代码是:

Handler handler = new Handler();
                            handler.postDelayed(new Runnable() {
                                @Override
                                public void run() {
                                    nextFragment();
                                }
                            }, 1000);

我想在用户对文章评分后提供共享功能,该功能将在第二次出现。 但我对如何做到这一点没有任何想法。 如何与作者一起显示此视图一秒钟,如果用户单击共享按钮,我会执行共享操作并在此之后回到下一篇文章?

谢谢!

1 个答案:

答案 0 :(得分:1)

那么为什么不在启动处理程序之前执行操作,并在处理程序完成时取消该操作?例如:

final ProgressDialog dialog = new ProgressDialog(this);
dialog.setTitle("Something something");
dialog.show();
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
    @Override
    public void run() {
        dialog.dismiss();
        nextFragment();
    }
}, 1000);