宁可枝头抱香死,何曾吹落北风中。这篇文章主要讲述在android studio中根据时间改变背景相关的知识,希望能为你提供帮助。
【在android studio中根据时间改变背景】我想为我的活动提供不同的图像背景。背景随着时间而变化。代码如下:
Calendar c = Calendar.getInstance();
int timeOfDay = c.get(Calendar.HOUR_OF_DAY);
ConstraintLayout homeLayout = findViewById(R.id.homelayout);
if(timeOfDay >
= 8 &
&
timeOfDay <
16){homeLayout.setBackgroundResource(R.drawable.day);
}else if(timeOfDay >
= 16 &
&
timeOfDay <
20){homeLayout.setBackgroundResource(R.drawable.dusk);
}else if(timeOfDay >
= 20 &
&
timeOfDay <
4){homeLayout.setBackgroundResource(R.drawable.night);
}else if(timeOfDay >
= 4 &
&
timeOfDay <
8){homeLayout.setBackgroundResource(R.drawable.pic);
}
但是当我运行代码时,没有背景出现。
答案我发表了自己的答案:
代码应更改为:
if(timeOfDay >
= 8 &
&
timeOfDay <
16){//day }else if(timeOfDay >
= 16 &
&
timeOfDay <
20){//afternoon}else if(timeOfDay >
= 20 &
&
timeOfDay <
24){//night}else if(timeOfDay>
=0 &
&
timeOfDay<
4){
//night
}else if(timeOfDay >
= 4 &
&
timeOfDay <
8){//dawn}
以前的if语句是(timeOfDay> = 20 & & timeOfDay < 4),这在数学上是不可能的。所以系统很困惑。
推荐阅读
- Android(背景颜色和图像同时)
- OnApplicationFocus()和OnApplicationPause()之间的区别是什么()
- Android Spinner在Espresso测试中点击后立即被解雇
- 关于扬声器标签如何在android中显示扬声器标签
- Android架构验证
- 使用Tab与新ToolBar(AppCompat v7-21)
- Android(为什么在创建选项卡时会调用onTabSelected())
- 设置AppVeyor的C ++语言标准
- 无法构建xamarin android项目