У меня есть main.xml
файл:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/background"
>
<ImageView
android:id="@+id/img1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/z01"
/>
<ImageView
android:id="@+id/img2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/z02"
/>
</LinearLayout>
Я пытаюсь достичь:
- когда пользователь касается и удерживает img1, изображение изменяется на нажатую картинку (т.е. изменяется с z01.png на z01_pressed.png)
- когда (например) пользователь переходит от img1 к img2, удерживая его, нажимается img2 (меняется его изображение с z02.png на z02_pressed.png) и img1 возвращается в свое состояние (к z01.png).
чтобы достичь этого, я написал это в onCreate
методе:
final ImageView img1 = (ImageView) findViewById(R.id.img1);
final ImageView img2 = (ImageView) findViewById(R.id.img2);
img1.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
img1.setBackgroundResource(R.drawable.z01_pressed);
return false;
}
});
img2.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
img2.setBackgroundResource(R.drawable.z01_pressed);
return false;
}
});
Однако это не работает. Я что-то не так делаю?