main.xml:
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/root" android:layout_width="match_parent" android:layout_height="match_parent"> <AdapterViewFlipper android:layout_width="match_parent" android:layout_height="match_parent" android:layout_alignParentTop="true" android:id="@+id/flip" android:flipInterval="2000"> </AdapterViewFlipper> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="上一个" android:id="@+id/last" android:onClick="prev" android:layout_alignParentBottom="true" android:layout_alignParentStart="true" android:layout_toStartOf="@+id/autoplay" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="自动播放" android:id="@+id/autoplay" android:onClick="auto" android:layout_alignParentBottom="true" android:layout_toStartOf="@+id/button" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="下一个" android:id="@+id/next" android:onClick="next" android:layout_alignParentBottom="true" android:layout_alignParentEnd="true" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="停止自动播放" android:id="@+id/button" android:onClick="stop" android:layout_alignParentBottom="true" android:layout_toStartOf="@+id/next" /> </RelativeLayout>MainActivity.java:
package com.sta.fwk.test; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.view.ViewGroup; import android.widget.AdapterViewFlipper; import android.widget.BaseAdapter; import android.widget.ImageView; public class MainActivity extends AppCompatActivity { private int[] imgs = new int[]{ R.drawable.b, R.drawable.a, R.drawable.l, R.drawable.laolishi, R.drawable.r }; private AdapterViewFlipper fipl; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); fipl = (AdapterViewFlipper)super.findViewById(R.id.flip); BaseAdapter adapter = new BaseAdapter() { @Override public int getCount() { return imgs.length; } @Override public Object getItem(int position) { return position; } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { ImageView img = new ImageView(MainActivity.this);//创建组件 img.setImageResource(imgs[position]); //设置要显示的图片 img.setScaleType(ImageView.ScaleType.FIT_XY); //设置缩放类型 img.setLayoutParams(new ViewGroup.LayoutParams( //设置布局参数 ViewGroup.LayoutParams.MATCH_PARENT, //宽度 ViewGroup.LayoutParams.MATCH_PARENT //高度 )); return img; } }; fipl.setAdapter(adapter); //设置数据适配器 } public void prev (View score){ fipl.showPrevious(); //显示上一个组件 fipl.stopFlipping(); //停止自动播放 } public void next(View score){ fipl.showNext(); //显示下一个组件 fipl.stopFlipping(); //停止自动播放 } public void stop(View score){ fipl.stopFlipping(); } public void auto(View score){ fipl.startFlipping(); //开始自动播放 } }说实话我不是很懂这个AdapterViewFlipper的用法