Android使用ViewPager实现图片滑动预览效果

发布时间 - 2026-01-11 02:25:40    点击率:

本文为大家分享了Android ViewPager实现图片滑动预览效果展示的具体代码,供大家参考,具体内容如下

效果图:

滑动前:


滑动后:

代码非常简单,实现起来很容易

xml代码:

<?xml version="1.0" encoding="utf-8"?> 
<android.support.constraint.ConstraintLayout 
  xmlns:android="http://schemas.android.com/apk/res/android" 
  xmlns:app="http://schemas.android.com/apk/res-auto" 
  xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" 
  android:layout_height="match_parent" tools:context="com.example.blog_0615.MainActivity"> 
 
  <android.support.v4.view.ViewPager 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:id="@+id/vp_main_viewpager" 
    ></android.support.v4.view.ViewPager> 
 
</android.support.constraint.ConstraintLayout> 

Activity代码:

package com.example.blog_0615; 
 
import android.support.v4.view.PagerAdapter; 
import android.support.v4.view.ViewPager; 
import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.View; 
import android.view.ViewGroup; 
import android.widget.ImageView; 
 
import java.util.ArrayList; 
import java.util.List; 
 
public class MainActivity extends AppCompatActivity { 
 
  //定义图片数组 
  private int images[]={R.drawable.bird,R.drawable.cat,R.drawable.chicken}; 
  //定义一个View的数组 
  private List<View> views=new ArrayList<>(); 
  private ViewPager vp_main_viewpager; 
 
  @Override 
  protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
 
    vp_main_viewpager = (ViewPager) findViewById(R.id.vp_main_viewpager); 
 
    //将images数组中的图片放入ImageView 
    for (int i = 0; i < images.length; i++) { 
      ImageView imageView=new ImageView(this); 
      imageView.setImageResource(images[i]); 
      views.add(imageView); 
    } 
 
    //为ViewPager设置适配器 
    vp_main_viewpager.setAdapter(new MyAdapter()); 
  } 
 
  class MyAdapter extends PagerAdapter { 
 
    @Override 
    public int getCount() { 
      return views.size(); 
    } 
 
    @Override 
    public boolean isViewFromObject(View view, Object object) { 
      return view==object; 
    } 
 
    @Override 
    public Object instantiateItem(ViewGroup container, int position) { 
      View v=views.get(position); 
      container.addView(v); 
 
      return v; 
    } 
 
    @Override 
    public void destroyItem(ViewGroup container, int position, Object object) { 
      View v=views.get(position); 
      //前一张图片划过后删除该View 
      container.removeView(v); 
    } 
 
 
  } 
} 

以上代码就可以实现Android ViewPager图片滑动预览效果啦。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# Android  # ViewPager  # 图片滑动  # 预览  # Android实现图片点击预览效果(zoom动画)  # Android实现本地图片选择及预览缩放效果  # Android编程滑动效果之Gallery+GridView实现图片预览功能(附demo源码下载)  # Android仿微信照片选择器实现预览查看图片  # Android图片上传实现预览效果  # Android实现仿Windows7图片预览窗格效果  # 很容易  # 大家分享  # 具体内容  # 大家多多  # 就可以  # 组中  # auto  # app  # layout_width  # tools  # match_parent  # http  # xmlns  # ConstraintLayout  # res  # apk  # schemas  # layout_height  # Activity  # vp_main_viewpager 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel如何创建自定义Facades?(详细步骤)  Laravel如何创建自定义中间件?(Middleware代码示例)  如何在Windows 2008云服务器安全搭建网站?  Mybatis 中的insertOrUpdate操作  Laravel怎么定时执行任务_Laravel任务调度器Schedule配置与Cron设置【教程】  Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门  公司网站制作需要多少钱,找人做公司网站需要多少钱?  Android Socket接口实现即时通讯实例代码  Laravel如何集成第三方登录_Laravel Socialite实现微信QQ微博登录  Laravel怎么实现验证码(Captcha)功能  大型企业网站制作流程,做网站需要注册公司吗?  Win11怎么设置默认图片查看器_Windows11照片应用关联设置  如何挑选优质建站一级代理提升网站排名?  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  如何挑选最适合建站的高性能VPS主机?  北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?  Laravel项目如何进行性能优化_Laravel应用性能分析与优化技巧大全  如何在 Telegram Web View(iOS)中防止键盘遮挡底部输入框  百度输入法全感官ai怎么关 百度输入法全感官皮肤关闭  Laravel DB事务怎么使用_Laravel数据库事务回滚操作  Laravel事件监听器怎么写_Laravel Event和Listener使用教程  如何用美橙互联一键搭建多站合一网站?  免费视频制作网站,更新又快又好的免费电影网站?  历史网站制作软件,华为如何找回被删除的网站?  Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解  简单实现jsp分页  Laravel如何使用withoutEvents方法临时禁用模型事件  浅述节点的创建及常见功能的实现  canvas 画布在主流浏览器中的尺寸限制详细介绍  如何构建满足综合性能需求的优质建站方案?  Python图片处理进阶教程_Pillow滤镜与图像增强  Laravel表单请求验证类怎么用_Laravel Form Request分离验证逻辑教程  Laravel的路由模型绑定怎么用_Laravel Route Model Binding简化控制器逻辑  INTERNET浏览器怎样恢复关闭标签页_INTERNET浏览器标签恢复快捷键与方法【指南】  百度浏览器ai对话怎么关 百度浏览器ai聊天窗口隐藏  网站广告牌制作方法,街上的广告牌,横幅,用PS还是其他软件做的?  Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】  JS中对数组元素进行增删改移的方法总结  如何快速建站并高效导出源代码?  Laravel如何实现图片防盗链功能_Laravel中间件验证Referer来源请求【方案】  香港服务器如何优化才能显著提升网站加载速度?  如何快速搭建高效服务器建站系统?  Edge浏览器提示“由你的组织管理”怎么解决_去除浏览器托管提示【修复】  浅析上传头像示例及其注意事项  Laravel辅助函数有哪些_Laravel Helpers常用助手函数大全  Laravel怎么处理异常_Laravel自定义异常处理与错误页面教程  Windows家庭版如何开启组策略(gpedit.msc)?(安装方法)  Laravel如何处理和验证JSON类型的数据库字段  制作企业网站建设方案,怎样建设一个公司网站?  活动邀请函制作网站有哪些,活动邀请函文案?