android 图片自动切换

图片自动切换
res/drawable/update.xml

<animation-list
xmlns:android="http://schemas.android.com/apk/res/android"
android:oneshot="false">
<item android:drawable="@drawable/update_1" android:duration="200" />
<item android:drawable="@drawable/update_2" android:duration="200" />
<item android:drawable="@drawable/update_3" android:duration="200" />
<item android:drawable="@drawable/update_4" android:duration="200" />
<item android:drawable="@drawable/update_5" android:duration="200" />
<item android:drawable="@drawable/update_6" android:duration="200" />
<item android:drawable="@drawable/update_7" android:duration="200" />
</animation-list>

res/layout/xx.xml

<com.android.server.status.AnimatedImageView android:layout_marginTop="10dp"
android:layout_width="fill_parent" android:layout_height="fill_parent"
android:layout_weight="1" android:src="@drawable/update"/>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要实现Android图片自动切换,可以使用ViewPager和Handler结合的方式。首先,将需要自动切换图片放置在ViewPager中,然后使用Handler定时发送消息,每次接收到消息后通过ViewPager的setCurrentItem方法切换到下一张图片即可。 具体实现步骤如下: 1. 在布局文件中添加ViewPager控件,并设置好需要自动切换图片。 2. 在Activity中获取ViewPager控件,并创建一个Handler对象。 3. 在Handler的run方法中,调用ViewPager的setCurrentItem方法切换到下一张图片,并使用postDelayed方法延迟一定时间后再次发送消息,实现自动切换的效果。 下面是代码示例: ```java public class MainActivity extends AppCompatActivity { private ViewPager mViewPager; private Handler mHandler; private int mCurrentItem = 0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mViewPager = findViewById(R.id.view_pager); MyPagerAdapter adapter = new MyPagerAdapter(getSupportFragmentManager()); mViewPager.setAdapter(adapter); mHandler = new Handler(); mHandler.postDelayed(new Runnable() { @Override public void run() { mCurrentItem++; if (mCurrentItem >= adapter.getCount()) { mCurrentItem = 0; } mViewPager.setCurrentItem(mCurrentItem); mHandler.postDelayed(this, 3000); } }, 3000); } @Override protected void onDestroy() { super.onDestroy(); mHandler.removeCallbacksAndMessages(null); } private static class MyPagerAdapter extends FragmentPagerAdapter { private static final int[] IMAGES = {R.drawable.image1, R.drawable.image2, R.drawable.image3}; public MyPagerAdapter(FragmentManager fm) { super(fm); } @Override public Fragment getItem(int position) { return ImageFragment.newInstance(IMAGES[position]); } @Override public int getCount() { return IMAGES.length; } } public static class ImageFragment extends Fragment { private static final String ARG_IMAGE_RES_ID = "image_res_id"; public static ImageFragment newInstance(int imageResId) { ImageFragment fragment = new ImageFragment(); Bundle args = new Bundle(); args.putInt(ARG_IMAGE_RES_ID, imageResId); fragment.setArguments(args); return fragment; } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = inflater.inflate(R.layout.fragment_image, container, false); ImageView imageView = view.findViewById(R.id.image_view); int imageResId = getArguments().getInt(ARG_IMAGE_RES_ID); imageView.setImageResource(imageResId); return view; } } } ``` 在上述代码中,我们使用了FragmentPagerAdapter来管理ViewPager中的图片,每个Fragment都显示一个ImageView控件来展示图片。 在Activity的onCreate方法中,我们创建了一个Handler对象,并在其中调用了ViewPager的setCurrentItem方法切换到下一张图片,并使用postDelayed方法延迟3秒后再次发送消息,实现自动切换的效果。在Activity的onDestroy方法中,我们需要调用Handler的removeCallbacksAndMessages方法,确保在Activity销毁时停止自动切换
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值