android ImageButton的图片怎么定义?
2014-11-11 14:28
148 查看
============问题描述============
我自定义了一个View对象,对象内在行项目上添加了一个ImageButton对象,对象的图片使用src属于设置,然后在按钮的OnClick事件内通过setBackgroundResource方法设置了ImageButton对象的图片,但两个属于对应的图片不是同一个东西;前者设置后会有一个方形的按钮在下面显示,后者设置后不会显示方形的按钮;如何在xml内设置setBackgroudResource的图片,不要显示按钮的方框;
============解决方案1============
你的需求用drawable就可以实现啊。 为啥子要写代码呢?
另外实际中,imagebutton比较冷门, 都用imageview
============解决方案2============
android:src设置的是图片显示的内容,当然和setBackgroundResource设置背景不一样,你应该设置imageView.setImageDrawable,这个来设置显示内容,这样就和android:src设置的一致了。
============解决方案3============
引用 6 楼 hackerlyf 的回复:
view.getBackground()
============解决方案4============
可以用preference保存状态,也可以设置一个全局标识,点一次改变一下状态
============解决方案5============
我觉得,你应该使用android的 selector, 既然你是某种按钮的开闭图片状态,直接在drawable文件夹下建一个xml文件夹,
你将这个文件作为普通的drawable资源进行使用
当你需要更改图片状态的时候,设置view的enable就好了,android会自己帮你切换对应图片
============解决方案6============
最好用imageview,一样有点击事件,何必用imagebutton
============解决方案7============
你的意思是说需要设置该View只显示图片而不显示背景的方框吗?,可以这样设置该XML文件的
android:background="#00000000"
android:src="@drawable/xxx"
第一句设置背景为全透明,看看是否可行。
============解决方案8============
引用 8 楼 hackerlyf 的回复:
view.getBackground()
我有两个图片,一个是开,一个是关,初始化时是关闭状态,我想判断View的背景是否是开的图片还是关的图片,这两个图片放在drawable目录下,通过view.getBackgroud()获取的是个drawable对象,R.drawable.lighton是int对象,应该怎么对比判断呢?
这个除非你在setBackground()保存了drawable对象,否则无法比对啊。
不过根据你的需求,你不应该通过图片的变化来判断业务逻辑,而是应该通过你显示的数据本身来判断。
我自定义了一个View对象,对象内在行项目上添加了一个ImageButton对象,对象的图片使用src属于设置,然后在按钮的OnClick事件内通过setBackgroundResource方法设置了ImageButton对象的图片,但两个属于对应的图片不是同一个东西;前者设置后会有一个方形的按钮在下面显示,后者设置后不会显示方形的按钮;如何在xml内设置setBackgroudResource的图片,不要显示按钮的方框;
============解决方案1============
你的需求用drawable就可以实现啊。 为啥子要写代码呢?
另外实际中,imagebutton比较冷门, 都用imageview
============解决方案2============
android:src设置的是图片显示的内容,当然和setBackgroundResource设置背景不一样,你应该设置imageView.setImageDrawable,这个来设置显示内容,这样就和android:src设置的一致了。
============解决方案3============
引用 6 楼 hackerlyf 的回复:
view.setBackgroundResource可以设置图片的背景,用什么命令获取view的背景图片呢?
view.getBackground()
============解决方案4============
可以用preference保存状态,也可以设置一个全局标识,点一次改变一下状态
============解决方案5============
我觉得,你应该使用android的 selector, 既然你是某种按钮的开闭图片状态,直接在drawable文件夹下建一个xml文件夹,
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/ic_launcher" android:state_enabled="false" /> <item android:drawable="@drawable/ic_launcher" /> </selector>
你将这个文件作为普通的drawable资源进行使用
当你需要更改图片状态的时候,设置view的enable就好了,android会自己帮你切换对应图片
============解决方案6============
最好用imageview,一样有点击事件,何必用imagebutton
============解决方案7============
你的意思是说需要设置该View只显示图片而不显示背景的方框吗?,可以这样设置该XML文件的
android:background="#00000000"
android:src="@drawable/xxx"
第一句设置背景为全透明,看看是否可行。
============解决方案8============
引用 8 楼 hackerlyf 的回复:
Quote: 引用 7 楼 lionfresh 的回复:
Quote: 引用 6 楼 hackerlyf 的回复:
view.setBackgroundResource可以设置图片的背景,用什么命令获取view的背景图片呢?
Quote: 引用 6 楼 hackerlyf 的回复:
view.setBackgroundResource可以设置图片的背景,用什么命令获取view的背景图片呢?
view.getBackground()
我有两个图片,一个是开,一个是关,初始化时是关闭状态,我想判断View的背景是否是开的图片还是关的图片,这两个图片放在drawable目录下,通过view.getBackgroud()获取的是个drawable对象,R.drawable.lighton是int对象,应该怎么对比判断呢?
这个除非你在setBackground()保存了drawable对象,否则无法比对啊。
不过根据你的需求,你不应该通过图片的变化来判断业务逻辑,而是应该通过你显示的数据本身来判断。
相关文章推荐
- android ImageButton的图片怎么定义?
- android ImageButton的图片怎么定义?
- Android开发系列:怎么混合显示图片和文本
- android 怎么把网络图片生成一个Bitmap显示在ImageView中
- Android EditText 定义类似于iPhone中的textFiled编辑文字时右边有个图片可以清除内容
- 【自定义Android带图片和文字的ImageButton】
- Android各分辨率定义的图片规格
- Android 控件背景图片和imagebutton的使用(selector)
- 自定义Android带图片和文字的ImageButton
- 关于android中怎么设置TabWidget中图片及字体的大小的问题
- 检索Android SDCard的图片,并显示到imagebutton
- android drawable 在res下 和在sdcard下得到图片大小 不一样怎么办?(已经解决)
- android 利用selector设置ImageButton不同状态下的背景图片
- Android - ImageButton单击切换按钮图片效果的实现
- android开发 怎么在应用中调取图片库 选择一张图片 返回自己的应用中
- Android使用xml定义带背景Button(解决ImageButton不能加文字的问题)
- Android的自定义图片按钮ImageButton【第一篇】
- android程序中怎么图片的实现平铺效果
- 自定义Android带图片和文字的ImageButton
- Android怎么让RadioButton图片居中显示