仿照微信朋友圈中点击图片出现大图浏览效果

简介: 仿照微信朋友圈中点击图片出现大图浏览效果
package com.example.qqviewpager;
 
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;
 
public class MainActivity extends Activity implements OnClickListener {
 
  private ImageView mImageView1, mImageView2, mImageView3;
 
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    mImageView1 = (ImageView) this.findViewById(R.id.iv_image1);
    mImageView2 = (ImageView) this.findViewById(R.id.iv_image2);
    mImageView3 = (ImageView) this.findViewById(R.id.iv_image3);
    mImageView1.setOnClickListener(this);
    mImageView2.setOnClickListener(this);
    mImageView3.setOnClickListener(this);
  }
 
  @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;
  }
 
  @Override
  public void onClick(View v) {
    // TODO Auto-generated method stub
    // switch (v.getId()) {
    // case R.id.iv_image1:
    //
    // break;
    // case R.id.iv_image2:
    //
    // break;
    // case R.id.iv_image3:
    //
    // break;
    //
    // default:
    // break;
    // }
    Intent mIntent = new Intent();
    mIntent.setClass(this, ViewpagerDemo.class);
    this.startActivity(mIntent);
  }
 
}
//这个是重点
package com.example.qqviewpager;
 
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ImageView;
 
public class MainActivity extends Activity implements OnClickListener {
 
  private ImageView mImageView1, mImageView2, mImageView3;
 
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    mImageView1 = (ImageView) this.findViewById(R.id.iv_image1);
    mImageView2 = (ImageView) this.findViewById(R.id.iv_image2);
    mImageView3 = (ImageView) this.findViewById(R.id.iv_image3);
    mImageView1.setOnClickListener(this);
    mImageView2.setOnClickListener(this);
    mImageView3.setOnClickListener(this);
  }
 
  @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;
  }
 
  @Override
  public void onClick(View v) {
    // TODO Auto-generated method stub
    // switch (v.getId()) {
    // case R.id.iv_image1:
    //
    // break;
    // case R.id.iv_image2:
    //
    // break;
    // case R.id.iv_image3:
    //
    // break;
    //
    // default:
    // break;
    // }
    Intent mIntent = new Intent();
    mIntent.setClass(this, ViewpagerDemo.class);
    this.startActivity(mIntent);
  }
 
}

//布局文件


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
 
    <TextView
        android:id="@+id/tv_text"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center_horizontal"
        android:text="测试有声资讯的viewpager" />
 
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="432dp" >
 
        <ImageView
            android:id="@+id/iv_image1"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_margin="4dip"
            android:layout_weight="1.0"
            android:paddingLeft="4dip"
            android:scaleType="fitXY"
            android:src="@drawable/a" />
 
        <ImageView
            android:id="@+id/iv_image2"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_margin="4dip"
            android:layout_weight="1.0"
            android:scaleType="fitXY"
            android:src="@drawable/b" />
 
        <ImageView
            android:id="@+id/iv_image3"
            android:layout_width="48dp"
            android:layout_height="48dp"
            android:layout_margin="4dip"
            android:layout_weight="1.0"
            android:paddingRight="4dip"
            android:scaleType="fitXY"
            android:src="@drawable/c" />
    </LinearLayout>
 
</LinearLayout>

//viewpager布局


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >
 
    <android.support.v4.view.ViewPager
        android:id="@+id/vp_test"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
 
</LinearLayout>


目录
相关文章
|
缓存
仿微信PhotoView+Viewpager浏览视频,图片,切换下一页前一页恢复原本大小
仿微信PhotoView+Viewpager浏览视频,图片,切换下一页前一页恢复原本大小
349 0
仿微信PhotoView+Viewpager浏览视频,图片,切换下一页前一页恢复原本大小
|
API Perl
仿照微信的效果,实现了一个支持多选、选原图和视频的图片选择器,支持iOS6+,3行代码即可集成
TZImagePickerController:一个支持多选、选原图、GIF和视频的图片选择器,同时有预览、裁剪功能,支持iOS6+。
3202 0
类似微信图片浏览,常见应用场景如微信朋友圈照片九宫格和微信聊天图片预览
本项目受Google官方demo Zooming a View 启发,实现了点击小图放大至全屏预览,退出全屏恢复至原来位置这两个过程的动画过渡。 常见应用场景如微信朋友圈照片九宫格和微信聊天图片预览,某些手机系统相册等viewpager图片查看 缩放 拖拽下拉缩小退出(效果同微信图片浏览) 特点1.支持自定义图片加载框架。
2467 0
|
Android开发
Android 仿照微信发说说,既能实现拍照,选图库,多图案上传 使用Retrofit2.0技术
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010046908/article/details/50767904          最近项目做完了,有闲暇时间,一直想做一个类似微信中微信发说说,既能实现拍照,选图库,多图案上传的案例,目前好多App都有类似微信朋友圈的功能,能过发表说说等附带图片上传。
1050 0
|
缓存
微信快速开发框架(五)-- 利用快速开发框架,快速搭建微信浏览博客园首页文章
这几天接连发布了《快速开发微信公众平台框架---简介》和《体验微信公众平台快速开发框架》几篇关于微信平台的文章,不过反响一般,可能需求不是很多吧。闲来无事,还是继续改造一下这个框架。 今天更新了框架代码,听取了 @RMay 的建议,加入了一个信息中间件,用来处理xelement,避免了重复解析,所以所有接口都更改了下。
1101 0
|
2月前
|
消息中间件 人工智能 Java
抖音微信爆款小游戏大全:免费休闲/竞技/益智/PHP+Java全筏开源开发
本文基于2025年最新行业数据,深入解析抖音/微信爆款小游戏的开发逻辑,重点讲解PHP+Java双引擎架构实战,涵盖技术选型、架构设计、性能优化与开源生态,提供完整开源工具链,助力开发者从理论到落地打造高留存、高并发的小游戏产品。
|
3月前
|
小程序 JavaScript API
uni-halo + 微信小程序开发实录:我的第一个作品诞生记
这篇文章介绍了使用uni-halo框架进行微信小程序开发的过程,包括选择该框架的原因、开发目标以及项目配置和部署的步骤。
167 0
uni-halo + 微信小程序开发实录:我的第一个作品诞生记
|
9月前
|
自然语言处理 搜索推荐 小程序
微信公众号接口:解锁公众号开发的无限可能
微信公众号接口是微信官方提供的API,支持开发者通过编程与公众号交互,实现自动回复、消息管理、用户管理和数据分析等功能。本文深入探讨接口的定义、类型、优势及应用场景,如智能客服、内容分发、电商闭环等,并介绍开发流程和工具,帮助运营者提升用户体验和效率。未来,随着微信生态的发展,公众号接口将带来更多机遇,如小程序融合、AI应用等。
|
6月前
|
小程序 前端开发 Android开发
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
1389 29
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
|
5月前
|
监控 数据可视化 数据处理
微信养号脚本,全自动插件,AUTOJS开发版
这是一套自动化微信养号工具,包含主脚本`wechat_auto.js`与配置文件`config.json`。主脚本实现自动浏览朋友圈、随机阅读订阅号文章及搜索指定公众号三大功能,支持自定义滚动次数、阅读时长等参数。代码通过随机化操作间隔模拟真实用户行为,具备完善的错误处理和日志记录功能。配套UI模块提供可视化操作界面,可实时监控任务状态与运行日志,便于调整参数设置。控制器部分扩展了批量数据处理能力,如学生信息的增删改查操作,适用于多场景应用。下载地址:https://www.pan38.com/share.php?code=n6cPZ 提取码:8888(仅供学习参考)。

热门文章

最新文章