我有一个Android应用程序,它具有打开和关闭背景图像的设置。
但是,我有一个用户给我发电子邮件说它会对他的设备产生不良影响,Galaxy Nexus运行4.0.2(请参阅https://www.dropbox.com/s/d61wyb325ckia9r/Screenshot_2012-04-19-00-02-27.png)我无法重现此问题我拥有的任何模拟器(所有2.2版本的版本)或我的任何一个设备(2.3.7 Nexus One和Evo 4g)。
透明度设置似乎正在抛弃渲染。
以下是切换背景图片的代码。
void setBackground(){
if(hideBackground==true){
getWindow().setBackgroundColor(-16777216);
getWindow().setBackgroundDrawableResource(R.drawable.black);
}
else{
int pics[] = {R.drawable.bloodseeker, R.drawable.drow, R.drawable.morphling};
Random rand = new Random();
int pos = rand.nextInt(pics.length-1);
getWindow().setBackgroundDrawable(null);
getWindow().setBackgroundColor(0);
getWindow().setBackgroundDrawableResource(pics[pos]);
}
}
任何人都能指出我正确的方向来解决这个问题吗?
答案 0 :(得分:0)
设置透明背景后,您可能需要invalidate根视图。
答案 1 :(得分:0)
正如JRaymond对我原来的帖子发表评论一样,设置根视图的背景可以解决这个问题。