我有一个很酷的形象(花哨的圆角)。我想在我的Android应用程序中实现该图像。单击它时,我希望它变暗(按下时按下按钮)并启动一个新活动。
我该怎么做?我应该使用什么(ImageView,ImageButton或只是按钮)?
答案 0 :(得分:5)
你需要两个版本的酷图像调用它作为active.png(点击状态,即变暗一点)和inactive.png(正常状态)。
在drawable
文件夹中为它们创建一个Selector文件,如下所示
喜欢:/drawable/cool_button_selector.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@drawable/active"/>
<item android:drawable="@drawable/inactive"/>
</selector>
然后像这样使用ImageButton:
<ImageButton
android:id="@+id/coolImageButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/cool_button_selector"
android:background="@null" />
已添加: android:background =“@ null”到<ImageButton>
希望这会有所帮助:)
答案 1 :(得分:1)
您可以根据您的要求使用上述任何一项。对于类似按钮的行为,您可以使用ImageButton,这是更改图像onTouch的说明
change button image in android
您可以类似地更改ImageView的图像。
ImageView img = (ImageView) getViewById(id-here);
img.setImageResource(R.drawable.my_image);
答案 2 :(得分:0)
你可以使用带有onClickListener的普通Imageview,imageview的drawable将是一个状态列表drawable xml文件,它带有自己的内置事件监听器,可以链接到单独的图像资源。