【发布时间】:2018-02-15 05:15:09
【问题描述】:
我正在制作一个天气应用程序。整个应用程序已完成,除 NIGHT ICONS 外,一切正常。我已经设置了当天的图标。但我不知道如何在一个检查时间的条件下设置两个不同的图标,如果它的白天它显示 SUN,如果它的夜晚它应该显示 MOON
这是我的代码:
private static String updateWeatherIcon(int condition) {
if (condition >= 0 && condition < 300) {
return "tstorm1";
} else if (condition >= 300 && condition < 500) {
return "light_rain";
} else if (condition >= 500 && condition < 600) {
return "shower3";
} else if (condition >= 600 && condition <= 700) {
return "snow4";
} else if (condition >= 701 && condition <= 771) {
return "fog";
} else if (condition >= 772 && condition < 800) {
return "tstorm3";
} else if (condition == 800) {
return "sunny";
} else if (condition >= 801 && condition <= 804) {
return "cloudy2";
} else if (condition >= 900 && condition <= 902) {
return "tstorm3";
} else if (condition == 903) {
return "snow5";
} else if (condition == 904) {
return "sunny";
} else if (condition >= 905 && condition <= 1000) {
return "tstorm3";
}
return "dunno";
}
请帮帮我。
【问题讨论】:
-
您的代码与白天或黑夜有什么关系?这只是天气状况。那么,您能否发布一下您如何获得白天/黑夜?顺便说一句,您不需要这样做
if (condition >= x && condition < y),因为它是一个 if/else,只有值总是高于先前的条件。所以你可以改用if (condition <= y)。 -
查看天气条件,它使用该图标,例如如果天气条件为 800,它会返回晴天图标。这些条件在 openweather API 中。我想做的是如果条件== 800,我想在白天返回晴天,在晚上返回月亮图标。那么你能告诉我我该怎么做吗?@Eselfar
-
您需要知道您尝试获取天气所在位置的时间。基于此,您可以定义是白天还是黑夜。然后你可以选择合适的图标。如果 API 返回时间,请不要这样做,否则您可以找到其他方法来了解它。
-
你能解释一下我如何获得时间并根据时间设置图标吗? @Eselfar