android中点击缩略图查看大图的方法一般有两种,一种是想新浪微博list页面那样,弹出一个窗口显示大图(原activity为背景)。另一种就是直接打开一个新的activity显示大图。

1、第一种方法我们可以使用自定义的AlertDialog来实现,代码如下:
ImageView image=(ImageView)findViewById(R.id.small_image);
image.setOnClickListener(new OnClickListener() { // 点击放大
public void onClick(View paramView) {
LayoutInflater inflater = LayoutInflater.from(context);
View imgEntryView = inflater.inflate(R.layout.dialog_photo_entry, null); // 加载自定义的布局文件
final AlertDialog dialog = new AlertDialog.Builder(context).create();
ImageView img = (ImageView)imgEntryView.findViewById(R.id.large_image);
imageDownloader.download("图片地址",img); // 这个是加载网络图片的,可以是自己的图片设置方法
dialog.setView(imgEntryView); // 自定义dialog
dialog.show();
// 点击布局文件(也可以理解为点击大图)后关闭dialog,这里的dialog不需要按钮
imgEntryView.setOnClickListener(new OnClickListener() {
public void onClick(View paramView) {
dialog.cancel();
}
});
}
});
对应的布局文件dialog_photo_entry内容为:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout android:layout_width="fill_parent" android:layout_height="wrap_content" 
  xmlns:android="http://schemas.android.com/apk/res/android">
    <ImageView android:layout_height="wrap_content" android:id="@+id/large_image "
android:layout_width="wrap_content" android:layout_centerHorizontal="true" android:layout_centerVertical="true">
</ImageView>
</RelativeLayout>
 
2、另外一种打开一个新的activity的方法相对简单点,大图activity代码如下:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.dialog_photo_entry);
activity = this;
Bundle bundle = this.getIntent().getExtras();
if(bundle!=null){
picName = bundle.getString("picName"); //图片名
}
ImageView img = (ImageView)this.findViewById(R.id.large_image );
imageDownloader.download( picName,img);
Toast toast = Toast.makeText(this, "点击图片即可返回",Toast.LENGTH_SHORT);
toast.setGravity(Gravity.BOTTOM, 0, 0);
toast.show();
img.setOnClickListener(new View.OnClickListener() { // 点击返回
public void onClick(View paramView) {
activity.finish();
}
});
}
对应的布局文件dialog_photo_entry内容为:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="fill_parent"
   android:layout_height="fill_parent"
   android:orientation="vertical">
<ScrollView android:layout_width="fill_parent" android:layout_height="wrap_content" 
   android:id="@+id/entry_pic" android:layout_margin="0dip" android:padding="0dip">
   <ImageView android:layout_height="wrap_content" android:id="@+id/large_image" 
       android:layout_marginTop="0dip" android:paddingTop="0dip"    
        android:adjustViewBounds="true"
android:layout_width="fill_parent">
</ImageView>
</ScrollView>
</LinearLayout>

android开发:点击缩略图查看大图的更多相关文章

  1. jquery层居中,点击小图查看大图,弹出层居中代码,顶部层固定不动,滚动条滚动情况

    jquery层居中,点击小图查看大图,弹出层居中代码 http://www.cnblogs.com/simpledev/p/3566280.html 见第一版,发现一个情况,如果页面内容多出一屏的情况 ...

  2. 点击图片查看大图(纯js)

    $(function(){ $(".pimg").click(function(){ var _this = $(this);//将当前的pimg元素作为_this传入函数 img ...

  3. [原创]WKWebview点击图片查看大图

    大家都知道,WKWebview是没有查看大图的属性或者方法的,所以只能通过js与之交互来实现这一功能,原理:通过js获取页面的图片,把它存放到数组,给图片添加点击事件,通过index显示大图就行了 其 ...

  4. WKWebview点击图片查看大图

    大家都知道,WKWebview是没有查看大图的属性或者方法的,所以只能通过js与之交互来实现这一功能,原理:通过js获取页面的图片,把它存放到数组,给图片添加点击事件,通过index显示大图就行了 其 ...

  5. jQuery点击缩略图切换大图代码

    很多网站上都会有点击缩略图切换成大图的效果,下面来分享一下它的源码 还是先来看效果截图 运行文件 然后点击下一张 下面分享源代码 html文件 <!DOCTYPE html PUBLIC &qu ...

  6. 点击小图查看大图jQuery插件FancyBox魔幻灯箱

    今日发现一个不错的JQuery插件FancyBox,也许早就有这个插件了,但是没名字,我就暂且叫他魔幻灯箱吧,采用Mac系统的样式.网传主要有以下功能:■弹出的窗口有很漂亮的阴影效果.■关联的对象(就 ...

  7. iOS点击cell查看大图,点击大图还原小图-b

    一.项目需求 用collectionView展示很多照片,点击某个照片,用全屏scrollView无限循环的方式查看图片.点击放大的图片,图片缩小到原先的尺寸. 如图gif1.gif所示,点击中间的图 ...

  8. JavaScript网站设计实践(五)编写photos.html页面,实现点击缩略图显示大图的效果

    一.photos.html页面,点击每一张缩略图,就在占位符的位置那里,显示对应的大图. 看到的页面效果是这样的: 1.实现思路 这个功能在之前的JavaScript美术馆那里已经实现了. 首先在页面 ...

  9. jQuery插件——imgbox(点击图片查看大图)

    需要的资源: 需要对应的js代码和css样式,大家可以通过www.htmldrive.net平台下载,也可以在我文章的底部下载.对应的资源如下,将资源引入页面(别忘了JQuery): 注意:jQuer ...

随机推荐

  1. 创建虚拟桌面的代码(重启桌面进程)(使用GetThreadDesktop,CreateDesktop,SetThreadDesktop等函数)

    在upk 里挖坟得来,有兴趣查查这几个函数... #include "windows.h" #pragma comment(lib,"user32.lib") ...

  2. 一起啃PRML - 1.2.1 Probability densities 概率密度

    一起啃PRML - 1.2.1 Probability densities @copyright 转载请注明出处 http://www.cnblogs.com/chxer/ 我们之前一直在讨论“谁取到 ...

  3. CH Round #45 能量释放

    能量释放 CH Round #45 - alan有一些陷阱 III 题目描述 alan得到一块由个能量晶体构成的矿石,对于矿石中的每一个能量晶体,如果用化学物质刺激某一个能量晶体,就能使它释放能量. ...

  4. 数学类杂志SCI2013-2014影响因子

    ISSN Abbreviated Journal Title Full Title Category Subcategory Country total Cites IF        2013-20 ...

  5. Excel和XML文件导入

    using System;using System.Collections;using System.Collections.Generic;using System.Configuration;us ...

  6. Jquery扩展- 倒计时

    Source Code (function($) { $.fn.countdown = function(options) { // default options var defaults = { ...

  7. vim spf13

    效果图来一个: http://vim.spf13.com/ 这个网站里面的vim配置非常全,推荐. 下面是对这个vim快捷键总结: <Leader> 是"," 打卡一个 ...

  8. Hadoop 配置好hive,第一次在conf能进入,第二次就不行了,怎么办?

    问题描述: 在 Hadoop 配置好 hive 数据仓库,在conf目录下通过hive命令进入hive数据仓库,非常顺利.  但关闭终端,第二次按这种方式却显示,无次命令. 怎么办? 解决办法: 在h ...

  9. RHEL6彻底禁用ip6的方法

    一.vi  /etc/modprobe.d/disable-ipv6.conf(名字随便起)(RHEL6.0之后没有了/etc/modprobe.conf这个文件) 输入:install ipv6 / ...

  10. 我所理解的 KMP(Knuth–Morris–Pratt) 算法

    假设要在 haystack 中匹配 needle . 要理解 KMP 先需要理解两个概念 proper prefix 和 proper suffix,由于找到没有合适的翻译,暂时分别称真实前缀 和 真 ...