我在XML文件中使用了一些ImageView并设置了它们的backgroundResources。
<ImageView
android:id="@+id/anim0image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="115px"
android:layout_marginTop="15px"
android:background="@drawable/small_gray"
android:visibility="visible" />
<ImageView
android:id="@+id/anim1image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="160px"
android:layout_marginTop="15px"
android:background="@drawable/small_gray"
android:visibility="visible" />
现在我正在改变编码的背景资源。像这样:
imageview.setBackgroundResource(R.drawable.small_red);
现在,当我从此屏幕退出并再次输入时,它会显示红色图像。但我想显示默认图像(我在XML文件中使用)。所以请告诉我如何释放红色图像,以便我们再次加载屏幕,然后使用默认图像设置imageview。
感谢。
答案 0 :(得分:0)
我建议您以编程方式完全更改图像的背景。
如果您按照发布的代码执行此操作,则每次打开应用时,都会调用onCreate
方法,然后使用灰色值再次setContentView
(加载布局)。
一种方法是每次更改时使用SharedPrefferences
存储颜色值,当您打开应用时,请检查SharedPrefferences
颜色。
如果SharedPrefferences
为null
,则表示没有颜色更改,您设置了默认的灰色。如果存储了颜色,请将其设置为您需要的图像/图像。
希望它有所帮助!祝你好运!
答案 1 :(得分:0)
添加以下方法。
@override
protected void onPause()
{
imageview.setBackgroundResource(null);
}
@override
protected void onResume()
{
imageview.setBackgroundResource(R.drawable.small_gray);
}
您需要在退出活动时重置imageview,并在恢复时再次需要设置defalt图像。因此,上述两种回调方法将实现您的目标。