本实例将显示类似于windows7提供的图片预览窗格效果,单击任意一张图片,可以在右侧显示该图片的预览效果。

效果如图所示:

具体实现方法:

res/layout/main.xml:

android:orientation="horizontal"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:id="@+id/layout1"

>

android:layout_height="match_parent"

android:layout_width="440px"

android:layout_marginTop="10px"

android:horizontalSpacing="3px"

android:verticalSpacing="3px"

android:numColumns="3"/>

android:id="@+id/imageSwitcher1"

android:padding="10px"

android:layout_width="match_parent"

android:layout_height="match_parent"/>

MainActivity:

package com.example.test;

import android.app.Activity;

import android.os.Bundle;

import android.view.View;

import android.view.ViewGroup;

import android.view.ViewGroup.LayoutParams;

import android.view.animation.AnimationUtils;

import android.widget.AdapterView;

import android.widget.AdapterView.OnItemClickListener;

import android.widget.BaseAdapter;

import android.widget.GridView;

import android.widget.ImageSwitcher;

import android.widget.ImageView;

import android.widget.ViewSwitcher.ViewFactory;

public class MainActivity extends Activity {

private int[] imageId=new int []{R.drawable.img1,R.drawable.img2,R.drawable.img3,R.drawable.img4,

R.drawable.img5,R.drawable.img6,R.drawable.img7,R.drawable.img8,R.drawable.img9};

private ImageSwitcher imageSwitcher;

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.main);

imageSwitcher=(ImageSwitcher)findViewById(R.id.imageSwitcher1);//获取图像切换器

//设置动画效果

imageSwitcher.setInAnimation(AnimationUtils.loadAnimation(this, android.R.anim.fade_in));//设置淡入动画

imageSwitcher.setOutAnimation(AnimationUtils.loadAnimation(this, android.R.anim.fade_out));//设置淡出动画

imageSwitcher.setFactory(new ViewFactory() {

@Override

public View makeView() {

//实例化一个ImageView对象

ImageView imageView=new ImageView(MainActivity.this);

//设置保持纵横比居中缩放图像

imageView.setScaleType(ImageView.ScaleType.FIT_CENTER);

imageView.setLayoutParams(new ImageSwitcher.LayoutParams(

LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));

return imageView;//返回imageView对象

}

});

imageSwitcher.setImageResource(R.drawable.img3);//设置默认显示的图像

GridView gridview=(GridView)findViewById(R.id.gridView1);

BaseAdapter adapter=new BaseAdapter(){

@Override

public View getView(int position, View convertView, ViewGroup parent) {

ImageView imageView = null;//声明一个ImageView对象

if(convertView==null){

imageView=new ImageView(MainActivity.this);//实例化ImageView对象

/****************设置图像的宽度和高度*******************/

imageView.setAdjustViewBounds(true);

imageView.setMaxWidth(150);

imageView.setMaxHeight(113);

/*********************************************************/

imageView.setPadding(5, 5, 5, 5);

}else{

imageView=(ImageView)convertView;

}

imageView.setImageResource(imageId[position]);

return imageView;

}

//功能:获得当前选项的id

@Override

public long getItemId(int position) {

return position;

}

//功能:获得当前选项

@Override

public Object getItem(int position) {

return position;

}

//获得数量

@Override

public int getCount() {

return imageId.length;

}

};

gridview.setAdapter(adapter);

gridview.setOnItemClickListener(new OnItemClickListener() {

@Override

public void onItemClick(AdapterView> parent, View view, int position,

long id) {

//显示选中的照片

imageSwitcher.setImageResource(imageId[position]);

}

});

}

}

运行效果与开头描述相同,成功实现。

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

android 图片预览动画,Android实现仿Windows7图片预览窗格效果相关推荐

  1. android 图片预览动画,Android图片上传实现预览效果

    首先具体分析一下,实现的功能,其中需求分析是必不可少的,需求.逻辑清除之后,再上手写代码,思路会很清晰. 1.多图上传首先得选择图片(这里项目需求是既可以拍照上传也可以从相册中选择) 2.拍照上传很简 ...

  2. android图片做平移动画,Android中用Matrix实现ImageView里的图片平移和缩放动画

    注: 这里说的图片的平移和缩放不是对ImageView整个view进行的,而是对ImageView里面的图片进行的(view本身没有什么变化),所以Android自带的动画效果不能满足需求. 功能点: ...

  3. android加载转圈动画,android 围绕中心旋转动画

    本文主要介绍Android中如何使用rotate实现图片不停旋转的效果.Android 平台提供了两类动画,一类是 Tween 动画,即通过对场景里的对象不断做图像变换(平移.缩放.旋转)产生动画效果 ...

  4. android 那几种动画,Android 动画实现几种方案

    Android 动画实现几种方案 在 Android 的 FrameWork 中,为我们提供三种动画的实现方式:逐帧(Frame)动画.视图/补间动画(View Animation)和属性动画(Pro ...

  5. android 张口逐帧动画,Android中实现一个简单的逐帧动画(附代码下载)

    场景 Android中的逐帧动画,就是由连续的一张张照片组成的动画. 效果 注: 实现 首先准备一组不同表情的照片,放在res/drawable下,然后在此目录下新建动画资源文件fairy.xml 这 ...

  6. Android RatingBar结合属性动画,快速实现 QQ群男女比例分布图效果

    RatingBar介绍 RatingBar作为评分组件,它在实现打分功能的时候确实很方便,并结合了手势触摸事件:RatingBar 的实质是 ProgressBar ,可以看看他的继承关系 java. ...

  7. android 向左滑动动画,Android中的滑动动画

    这是问题所在. 我想从左到右滑动(在下面的代码中从右到左--) 所以请帮我动画(XML动画与此相反)-- (当前任务在按钮单击时正确运行-) 这是源- public class MainActivit ...

  8. Android平移补间动画,Android 补间动画之平移动画TranslateAnimation

    Android动画系列 博客导航: 1.介绍: Android补间动画之平移动画,在实际的开发过程中,其实有好多地方需要用到平移动画,这是对于平移动画的简单介绍. 2.属性 duration 时间 f ...

  9. android 向左滑动动画,Android Activity左边滑出,右边滑入的动画切换

    Activity的切换动画实际上是Android的View Animation(视图动画)中的Tween Animation效果,Tween Animation分为4种动画效果,分别是:alpha ( ...

最新文章

  1. 蚂蚁金服AAAI论文:基于长短期老师的样本蒸馏方法和自动车险定损系统的最新突破...
  2. STL--priority_queue学习笔记
  3. 关于Object.create()与原型链的面试题?
  4. eclipse + maven搭建SSM框架
  5. 深度学习实战:基于bilstm或者dialated convolutions做NER
  6. 记录 之 最近阅读的动作识别(action recognition)工作
  7. js学习(node.js环境)
  8. TokenInsight:反映区块链行业整体表现的 TI 指数较昨日同期上涨9.79%
  9. 有关于腾讯地图服务端IP定位接口的获取当前城市的处理
  10. 论文赏析[TACL17]基于中序转移的成分句法分析
  11. pandas—pandas.DataFrame.query与pandas.DataFrame.reset_index
  12. 从官方例程深度学习海思SDK及API(2)
  13. html实现验证码效果,html5使用canva实现验证码效果(代码实例)
  14. Opencv 关于Kmeans算法
  15. jquery左侧图片与右侧图片以及放大镜和图片的放大的图片和产品的隐藏的效果
  16. excel乘法公式怎么输入_智能考勤表,MM你再也不用加班了!【Excel教程】
  17. 在主函数内使用宏定义
  18. 面试过程中经常会问到的职业规划,该如何作答
  19. 第五章 准确率、精确率与混淆矩阵
  20. 用java实现凯撒加密系统,JAVA如何实现caesar凯撒加密算法

热门文章

  1. 排序及查找----[(冒泡,快速)(拉格朗日,二分)]
  2. NOIP2016天天爱跑步 题解报告【lca+树上统计(桶)】
  3. [转人工智能工程师学习路线及具备的5项基本技能
  4. UVALive 7455 Linear Ecosystem (高斯消元)
  5. 顺序程序设计03 - 零基础入门学习C语言09
  6. linux的常用操作——程序调试gdb
  7. Maven简述以及配置使用
  8. iar 连接linux开发板,LED裸机程序(IAR)
  9. b站的服务器在哪个位置,b站用的是哪个云服务器
  10. ssrf漏洞 php,DokuWiki fetch.php SSRF漏洞与tok安全验证绕过分析