自动刷新android片段,直到满足条件

Posted

技术标签:

【中文标题】自动刷新android片段,直到满足条件【英文标题】:Auto refresh android fragment until condition is met 【发布时间】:2021-09-25 12:00:03 【问题描述】:

我正在为 android 构建一个多片段应用程序。我现在在我的第三个片段中执行,我试图让它自动刷新,直到计时器达到 0,之后它应该打开下一个片段并转换。有人建议我使用以下方法自动刷新,但在满足条件后,应用程序关闭,Android 告诉我它停止工作。第 4 个片段根本不显示。

这是我在代码中刷新的方式,在我的第三个片段的 onCreateView() 中:

refresh = new Runnable() 
    @Override
    public void run() 
        if (isRunning) 
            // do some stuff here
            handler.postDelayed(refresh, 500);
         else
            return;
    
;
handler.post(refresh);

我正在刷新 run() 中调用 UI,因为我正在更新多个文本视图。我应该为此做一个单独的线程吗?

【问题讨论】:

【参考方案1】:

要在android中刷新片段,请使用以下代码。片段刷新方法

public void refreshFragment()
    Fragment currentFragment = getActivity().getSupportFragmentManager().findFragmentById(R.id.container);
    FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
    fragmentTransaction.detach(currentFragment); 
    fragmentTransaction.attach(currentFragment);
    fragmentTransaction.commit();

您可以将它放在处理程序中,并在需要时调用该方法。注意:确保在内部调用方法

runOnUiThread(new Runnable//code here)

【讨论】:

以上是关于自动刷新android片段,直到满足条件的主要内容,如果未能解决你的问题,请参考以下文章

循环用户输入直到满足条件

在 JavaScript 中循环直到满足条件

尝试循环 API 调用直到满足条件

如何重复代码直到满足特定条件? [复制]

Spark SQL:窗口函数滞后直到满足条件

Python Selenium,被动等待,直到满足某些页面条件,然后接管[重复]