基于时间的动作或文本

时间:2016-07-29 12:06:46

标签: android android-studio text time

我正在尝试为学生制作应用程序,在应用程序的主屏幕中,我想显示一条消息,例如“嘿!早安”,它应该更改为“嘿!晚上好”,当它之后一天的15:00,以此类推。 我怎样才能做到这一点?

3 个答案:

答案 0 :(得分:0)

你可以通过

获得时间或时间
import java.util.Calendar

Calendar c = Calendar.getInstance(); 
int hours = c.get(Calendar.HOUR);

从中您可以为textview选择一个字符串:

TextView mytextview=(TextView) findViewByID(...);
String message="";
if(hours<11){
message="good morning"
}else if(hours>=11 & hours<17){
message=...}
mytextview.setText(message);

答案 1 :(得分:0)

请检查一下。它可以帮到你。

      Calendar c = Calendar.getInstance();
        int timeOfDay = c.get(Calendar.HOUR_OF_DAY);

        if(timeOfDay >= 0 && timeOfDay < 12){
            Toast.makeText(this, "Good Morning", Toast.LENGTH_SHORT).show();        
        }else if(timeOfDay >= 12 && timeOfDay < 16){
            Toast.makeText(this, "Good Afternoon", Toast.LENGTH_SHORT).show();
        }else if(timeOfDay >= 16 && timeOfDay < 21){
            Toast.makeText(this, "Good Evening", Toast.LENGTH_SHORT).show();
        }else if(timeOfDay >= 21 && timeOfDay < 24){
            Toast.makeText(this, "Good Night", Toast.LENGTH_SHORT).show(); 
}

答案 2 :(得分:0)

您可以在onResume()中查看活动中的时段。这将检查必须显示文本的屏幕何时到达前景。因此,即使您从不同的屏幕返回它,也会进行检查。对于实时检查,您需要一种机制来对事件进行绝对回调[1500小时]。

这可能有点麻烦,我们需要更多信息来决定一种机制。您还应该确定这是否与您想要做的完全相同。

由于其微不足道的性质,未显示检查代码。