2016-07-29 72 views
0

我想为学生制作一个应用程序,并在应用程序的主屏幕中显示一条消息,如“嗨!早安”,它应该更改为“嗨!晚安! “当它是在一天的15:00之后,等等。 我该如何做到这一点?基于时间的动作或文本

+0

使用系统,即移动,时间。看到这个http://stackoverflow.com/questions/5369682/get-current-time-and-date-on-android –

回答

0

请检查该one.It可以帮助你。

 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(); 
} 
+1

这工作完美! –

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); 
0

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

这可能有点麻烦,我们需要更多的信息来决定一个机制。你也应该决定这是不是你想要做的。

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