Java 编辑文本焦点更改时,如何在特定时间间隔(约120秒)后自动保存
我有一个应用程序,我正在工作的重点,类似于记事本应用程序,为音乐家。当他们将编辑文本置于焦点(触摸文本框)时,我想每隔2分钟从编辑文本框自动保存他们的文本内容。我尝试使用了一个倒计时程序,但我需要帮助,每2分钟循环一次编辑文本,并在调用应用程序的onPause()时终止它Java 编辑文本焦点更改时,如何在特定时间间隔(约120秒)后自动保存,java,android,Java,Android,我有一个应用程序,我正在工作的重点,类似于记事本应用程序,为音乐家。当他们将编辑文本置于焦点(触摸文本框)时,我想每隔2分钟从编辑文本框自动保存他们的文本内容。我尝试使用了一个倒计时程序,但我需要帮助,每2分钟循环一次编辑文本,并在调用应用程序的onPause()时终止它 new CountDownTimer(120000, 1000) { public void onTick(long millisUntilFinished) { //every 1000 millis
new CountDownTimer(120000, 1000) {
public void onTick(long millisUntilFinished) {
//every 1000 millis
mTextField.setText("seconds remaining: " + millisUntilFinished / 1000);
}
public void onFinish() {
//when 2 minutes is reached
mTextField.setText("done!");
}
}.start();
我可以通过再次调用start()在onFinish()中重新启动它,但它只是在后台陷入无限循环。谢谢
我有一个应用程序,我正在工作的重点,在类似记事本
应用程序,为音乐家。我想每天自动保存他们的文本内容
当他们将编辑文本置于焦点时,距编辑文本框2分钟
(触摸文本框)
为此,您可以使用计时器-
final Handler handler = new Handler();
Timer timer = new Timer();
TimerTask doAsynchronousTask = new TimerTask() {
@Override
public void run() {
handler.post(new Runnable() {
@SuppressWarnings("unchecked")
public void run() {
try {
"Your function call "
}
catch (Exception e) {
// TODO Auto-generated catch block
}
}
});
}
};
timer.schedule(doAsynchronousTask, 0, "Timer value");
工作完成后,您可以通过以下方式停止计时器:
if(timer != null) {
timer.cancel();
timer = null;
}
希望这有帮助
我有一个应用程序,我正在工作的重点,在类似记事本
应用程序,为音乐家。我想每天自动保存他们的文本内容
当他们将编辑文本置于焦点时,距编辑文本框2分钟
(触摸文本框)
为此,您可以使用计时器-
final Handler handler = new Handler();
Timer timer = new Timer();
TimerTask doAsynchronousTask = new TimerTask() {
@Override
public void run() {
handler.post(new Runnable() {
@SuppressWarnings("unchecked")
public void run() {
try {
"Your function call "
}
catch (Exception e) {
// TODO Auto-generated catch block
}
}
});
}
};
timer.schedule(doAsynchronousTask, 0, "Timer value");
工作完成后,您可以通过以下方式停止计时器:
if(timer != null) {
timer.cancel();
timer = null;
}
希望这有帮助
我有一个应用程序,我正在工作的重点,在类似记事本
应用程序,为音乐家。我想每天自动保存他们的文本内容
当他们将编辑文本置于焦点时,距编辑文本框2分钟
(触摸文本框)
为此,您可以使用计时器-
final Handler handler = new Handler();
Timer timer = new Timer();
TimerTask doAsynchronousTask = new TimerTask() {
@Override
public void run() {
handler.post(new Runnable() {
@SuppressWarnings("unchecked")
public void run() {
try {
"Your function call "
}
catch (Exception e) {
// TODO Auto-generated catch block
}
}
});
}
};
timer.schedule(doAsynchronousTask, 0, "Timer value");
工作完成后,您可以通过以下方式停止计时器:
if(timer != null) {
timer.cancel();
timer = null;
}
希望这有帮助
我有一个应用程序,我正在工作的重点,在类似记事本
应用程序,为音乐家。我想每天自动保存他们的文本内容
当他们将编辑文本置于焦点时,距编辑文本框2分钟
(触摸文本框)
为此,您可以使用计时器-
final Handler handler = new Handler();
Timer timer = new Timer();
TimerTask doAsynchronousTask = new TimerTask() {
@Override
public void run() {
handler.post(new Runnable() {
@SuppressWarnings("unchecked")
public void run() {
try {
"Your function call "
}
catch (Exception e) {
// TODO Auto-generated catch block
}
}
});
}
};
timer.schedule(doAsynchronousTask, 0, "Timer value");
工作完成后,您可以通过以下方式停止计时器:
if(timer != null) {
timer.cancel();
timer = null;
}
希望这有帮助 使用
线程
比使用计数器
更好。了解。或者,如果你想只使用Android,那么使用你最好使用线程
而不是计数器
。了解。或者,如果你想只使用Android,那么使用你最好使用线程
而不是计数器
。了解。或者,如果你想只使用Android,那么使用你最好使用线程
而不是计数器
。了解。或者,如果您只想使用Android,那么可以使用Runnable和handler
下面是一个示例,请检查它
Handler handler = new Handler();
Runnable runnable = new Runnable() {
public void run() {
try {
write your code
handler.postDelayed(runnable,1200000);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
};
handler.postAtTime(runnable);
您好,您可以使用Runnable和handler 下面是一个示例,请检查它
Handler handler = new Handler();
Runnable runnable = new Runnable() {
public void run() {
try {
write your code
handler.postDelayed(runnable,1200000);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
};
handler.postAtTime(runnable);
您好,您可以使用Runnable和handler 下面是一个示例,请检查它
Handler handler = new Handler();
Runnable runnable = new Runnable() {
public void run() {
try {
write your code
handler.postDelayed(runnable,1200000);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
};
handler.postAtTime(runnable);
您好,您可以使用Runnable和handler 下面是一个示例,请检查它
Handler handler = new Handler();
Runnable runnable = new Runnable() {
public void run() {
try {
write your code
handler.postDelayed(runnable,1200000);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
};
handler.postAtTime(runnable);
伟大的非常感谢。我只想问一个问题:1)这在生命周期方面是如何工作的?我注意到它在任何时候都没有被杀死。计时器怎么知道停止?太好了。非常感谢。我只想问一个问题:1)这在生命周期方面是如何工作的?我注意到它在任何时候都没有被杀死。计时器怎么知道停止?太好了。非常感谢。我只想问一个问题:1)这在生命周期方面是如何工作的?我注意到它在任何时候都没有被杀死。计时器怎么知道停止?太好了。非常感谢。我只想问一个问题:1)这在生命周期方面是如何工作的?我注意到它在任何时候都没有被杀死。计时器怎么知道停止?谢谢!我得到一个关于未初始化可运行变量的错误。我将您的代码(函数调用为“try{}”)放在它自己的方法中。坏主意?好的,你可以这么做,如果这个答案对你有帮助的话,请接受。谢谢!我得到一个关于未初始化可运行变量的错误。我将您的代码(函数调用为“try{}”)放在它自己的方法中。坏主意?好的,你可以这么做,如果这个答案对你有帮助的话,请接受。谢谢!我得到一个关于未初始化可运行变量的错误。我将您的代码(函数调用为“try{}”)放在它自己的方法中。坏主意?好的,你可以这么做,如果这个答案对你有帮助的话,请接受。谢谢!我得到一个关于未初始化可运行变量的错误。我将您的代码(函数调用为“try{}”)放在它自己的方法中。坏主意?好的,你可以这么做,如果这个答案对你有帮助的话,请接受。