我有两个按钮和一个imageview:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads" >
<ImageView
android:id="@+id/dog"
android:contentDescription="@string/desc"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:src="@drawable/dogsec" />
<ImageButton
android:id="@+id/barkk"
android:contentDescription="@string/desc"
android:background="@android:color/transparent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/dog"
android:layout_centerHorizontal="true"
android:layout_marginTop="45dp"
android:src="@drawable/bark" />
<ImageButton
android:id="@+id/rrrr"
android:background="@android:color/transparent"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@+id/barkk"
android:layout_below="@+id/barkk"
android:layout_marginRight="41dp"
android:layout_marginTop="15dp"
android:contentDescription="@string/desc"
android:src="@drawable/rrr" />
</RelativeLayout>
a)我需要让Imageview将按钮“barkk”点击更改为其来源(我的意思是图像的默认状态是picture1,它应该显示picture2并返回到picture1)。只要按下barkk就不应该显示picture2。
b)只要按下按钮rrrr,我就需要显示picture3。
我正好使用ImageView,它应该根据情况a或b)改变其来源,如上所述。
请帮帮我。提前致谢
答案 0 :(得分:1)
使用此代码。
myButton.setOnClickListener(new OnClickListener() {
@Override
public boolean onTouch(View v, MotionEvent event)
{
if(event.getAction() == MotionEvent.ACTION_DOWN) {
myImageView.setImageResource(R.drawable.myNewImage);
} else if (event.getAction() == MotionEvent.ACTION_UP) {
myImageView.setImageResource(R.drawable.myNewImage);
}
}
};