gpt4 book ai didi

android - Handler Runnable 甚至在 Activity 退出后运行

转载 作者:行者123 更新时间:2023-11-29 14:34:53 24 4
gpt4 key购买 nike

我每 5 秒将 TextView 中的文本用户类型更新到数据库中。处理程序从 textview 收集数据并将其保存到数据库。但是即使在我按下后退按钮并返回到 MainActivity 之后,更新代码也会运行。

如何在退出 Activity 后停止运行代码。

  public class CreateBoxActivity extends AppCompatActivity {
Long current_BoxID = null, parent_BoxID = null;
Handler h=new Handler();

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_create_box);
h.post(new Runnable(){ //Run this every five seconds to update the data
@Override
public void run() {

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String editeddate = sdf.format(Calendar.getInstance().getTime());
String titleText = ((EditText)findViewById(R.id.new_box_title)).getText().toString();
String descriText = ((EditText)findViewById(R.id.new_box_descri)).getText().toString();
Boxes nbx = new Boxes(1, null , titleText, descriText, editeddate, editeddate);
BoxesController.UpdateBox(nbx);

h.postDelayed(this,5000);
}
});
}

最佳答案

当 Activity 被销毁时,您需要释放处理程序资源。

@override
protected void onDestroy() {
super.onDestroy();
h.removeCallbacksAndMessages(null);
h = null;
}

关于android - Handler Runnable 甚至在 Activity 退出后运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50180946/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com