Android programs the method of clicking on the image to achieve the toggle effect

  • 2020-09-16 07:47:13
  • OfStack

This article describes the Android programming click image to achieve the switching effect. To share for your reference, the details are as follows:

Create a new Android project and name it FrameLayout

This example mainly operates on the MainActivity.Java class file under the src folder and the ES13en_main.xml layout file under res/layout

1. Layout main page code activity_main.xml ↓


<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#897753"
>
<ImageView 
android:id="@+id/image1"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:visibility="visible"
android:src="@drawable/a"/>
<ImageView 
android:id="@+id/image2"
android:visibility="invisible"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:src="@drawable/b"/>
<ImageView 
android:id="@+id/image3"
android:visibility="invisible"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:src="@drawable/c"/>
</FrameLayout>

2. Java code MainActivity. Java left


package com.example.framelayout;
import java.util.ArrayList;
import java.util.List;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MotionEvent;
import android.view.View;
import android.widget.ImageView;
public class MainActivity extends Activity {
private String TAG = "FramLayoutTestActivity";
private ImageView image1;
private ImageView image2;
private ImageView image3;
private List<ImageView> list;
private int count = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
image1 = (ImageView) findViewById(R.id.image1);
image2 = (ImageView) findViewById(R.id.image2);
image3 = (ImageView) findViewById(R.id.image3);
list = new ArrayList<ImageView>();
list.add(image1);
list.add(image2);
list.add(image3);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
// TODO Auto-generated method stub
if (event.getAction() == MotionEvent.ACTION_DOWN) {
Log.i(TAG, "move---");
showImage();
}
return super.onTouchEvent(event);
}
private void showImage() {
//image1.setVisibility(View.VISIBLE);
count = count % 3;
for (ImageView i : list) {
i.setVisibility(View.INVISIBLE);
}
list.get(count).setVisibility(View.VISIBLE);
count++;
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}

3. Use the Android simulator or connect to Android smart phone to run the project. Click the program interface, and the picture will automatically switch.

ps: Several src linked images from ImageView in the activity_main.xml file need to be copied externally to the res/drawable directory in the project

I hope this article has been helpful in Android programming.


Related articles: