Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/217.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android setText()方法在用户退出活动后重置_Android_Android Layout_Button_Android Button_Settext - Fatal编程技术网

Android setText()方法在用户退出活动后重置

Android setText()方法在用户退出活动后重置,android,android-layout,button,android-button,settext,Android,Android Layout,Button,Android Button,Settext,因此,当用户单击按钮时,我希望它将文本设置为未来时间。它可以工作,但当用户关闭活动时,按钮会重置。另外,如果有人也可以指导我创建一个方法,重置按钮文本后的时间到达。这是我在按钮上设置文本的代码 private void setReloadTime(int reload, Button btn) { int minutes = (reload/1000/60)%60; int hours = reload/1000/60/60; Calendar c = Calendar

因此,当用户单击按钮时,我希望它将文本设置为未来时间。它可以工作,但当用户关闭活动时,按钮会重置。另外,如果有人也可以指导我创建一个方法,重置按钮文本后的时间到达。这是我在按钮上设置文本的代码

private void setReloadTime(int reload, Button btn) {
    int minutes = (reload/1000/60)%60;
    int hours = reload/1000/60/60;

    Calendar c = Calendar.getInstance();
    int min = c.get(Calendar.MINUTE);
    int hr = c.get(Calendar.HOUR_OF_DAY);
    if (reload ==0){
        btn.setTextColor(R.color.colorAccent);
        btn.setText("Ready Again In 24 Hours");
        return;

    }
    if (minutes+min>60) hr++;
    int finMin = (minutes + min) %60;
    int finHr= (hours + hr)%24;
    String fin = "Ready again at " +finHr + ":";
    if (finMin<10){
        fin = fin +"0"+finMin;
    } else{
        fin = fin + finMin;
    }
    btn.setTextColor(R.color.colorAccent);
    btn.setText(fin);


}
private void setReloadTime(int-reload,按钮btn){
整数分钟=(重新加载/1000/60)%60;
整小时=重新加载/1000/60/60;
Calendar c=Calendar.getInstance();
int min=c.get(日历分钟);
int hr=c.get(日历小时);
如果(重新加载==0){
btn.setTextColor(R.color.colorAccent);
btn.setText(“24小时后再次准备就绪”);
返回;
}
如果(分钟+分钟>60)小时++;
int finMin=(分钟+分钟)%60;
int finHr=(小时+小时)%24;
字符串fin=“在“+finHr+”处再次准备就绪:”;

如果(finMin您应该将应用程序的状态(按钮、时间等)保存在SharedReferences中。在重新加载活动时,使用共享首选项

例如:


指导线是按照将给出的答案进行操作,进一步研究,实际上真正的指导线是,你的活动控制屏幕上的内容,因此当它消失时,屏幕上的所有内容都消失了,使用两个答案提供的SharedReference样式以及文本节省时间,下次你的活动出现时,请重试eve它,并用当前时间检查它
public static final String MyPREFERENCES = "MyPrefs" ;
   SharedPreferences sharedpreferences;

        sharedpreferences = getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE);

  Editor editor = sharedpreferences.edit();
    editor.putString(Name, fin);
    editor.commit(); 
     if (sharedpreferences.contains(Name))
          {

     btn.setText(sharedpreferences.getString(Name, ""));

          }