ToggleButton
我的可以运行,但是只显示一张图片,不能转换
我的可以运行,但是只显示一张图片,不能转换
2017-12-04
我之前也是只能显示一张图片(android studio环境),
解决方法:1、把image.setBackgroundResource()改成image.setImageResource()。
2、xml中android:src="@drawable/off"改成android:background="@drawable/off"
两者的区别:
setBackgroundResource是设置view的背景图片
setImageResource是设置ImageView的图片
background会根据ImageView组件给定的长宽进行拉伸,而src就存放的是原图的大小,不会进行拉伸。src是图片内容(前景),bg是背景,可以同时使用。
此外:scaleType只对src起作用;bg可设置透明度,比如在ImageButton中就可以用Android:scaleType控制图片的缩放方式,示例代码如下:
<ImageView
android:id="@+id/img"
android:src="@drawable/off"
android:scaleType=" fitXY"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
说明:centerInside表示按比例缩放图片,使得图片长 (宽)的小于等于视图的相应维度。
注意:控制的图片为资源而不是背景,即android:src="@drawable/off",而非 android:background="@drawable/off"。程序中动态加载图片也类似,如:应该 为
imgView.setImageResource(R.drawable.*);
而非imgView.setBackgroundResource(R.drawable.*);
简单来说:android:src="@drawable/off"用imgView.setImageResource(R.drawable.off);
android:background="@drawable/off"用而非imgView.setBackgroundResource(R.drawable.off);
举报