Android 以编程方式';按';每60秒按一次按钮
在我的应用程序中,我被要求添加一个自动更新功能。我试图做的是设置一个计时器事件,这样,如果用户在过去60秒内没有按下更新按钮,则执行“refreshButton.performClick();” 我一直在搜索,但找不到计时器与UI交互的示例。我不断遇到错误,比如“只有创建视图层次结构的原始线程” 如果用户按下按钮,我想重置计时器Android 以编程方式';按';每60秒按一次按钮,android,timer,Android,Timer,在我的应用程序中,我被要求添加一个自动更新功能。我试图做的是设置一个计时器事件,这样,如果用户在过去60秒内没有按下更新按钮,则执行“refreshButton.performClick();” 我一直在搜索,但找不到计时器与UI交互的示例。我不断遇到错误,比如“只有创建视图层次结构的原始线程” 如果用户按下按钮,我想重置计时器 这可能吗?您可以使用AlamManager类和后台服务每60秒运行一次代码 例如,请参见AlarmService_Service.java,您可以使用AlarmMana
这可能吗?您可以使用AlamManager类和后台服务每60秒运行一次代码
例如,请参见AlarmService_Service.java,您可以使用AlarmManager类和后台服务每60秒运行一次代码
例如,请参见AlarmService_Service.java,您只能从UI线程与aView交互 您可以在计时器任务中创建类似的内容
- 在类中定义此变量:
Handler=newhandler()代码>
- 在计时器任务调用中:
handler.post(new Runnable(){ public void run(){ refreshButton.performClick(); } });
- 在类中定义此变量:
Handler=newhandler()代码>
- 在计时器任务调用中:
handler.post(new Runnable(){ public void run(){ refreshButton.performClick(); } });
- 我认为你走错了方向。与其尝试按下按钮,只需设置一个计时器来调用按钮按下后调用的相同方法,这将使操作更简单,并且不会无缘无故地涉及UI。我认为您走错了方向。与其尝试按下按钮,只需设置一个计时器来调用按钮按下后调用的相同方法,这将使操作更加简单,并且不会无缘无故地涉及UI。粘贴现有代码,以便我们可以帮助您修改/扩展粘贴现有代码,以便我们可以帮助您修改/扩展它这将导致更新发生,即使应用程序已退出。sgallegos的答案是imho更好、更容易实现。“报警管理器适用于希望在特定时间运行应用程序代码的情况,即使应用程序当前未运行”您可以在活动的onDestroy方法中简单地停止alaram服务。@Jave您是对的sgallegos方法更好而且易于实现。这将导致更新发生,即使应用程序已退出。sgallegos的答案是imho更好、更容易实现。“Alarm Manager适用于您希望在特定时间运行应用程序代码的情况,即使您的应用程序当前未运行”您可以简单地在活动的onDestroy方法中停止alaram服务。@Jave you's right sgallegos方法更好、更容易实现。或者更好,调用
handler.postDelayed(runnable,60000)代码>。为了完全避免计时器,或者更好,调用handler.postDelayed(runnable,60000)代码>。完全避免使用计时器。