我们学了那么多动画,有没有想给控件实现动画呢,这里我们利用以前学过的GridView实现相册图片
缩略的动画效果。
首先我们anim_set文件.xml定义
实现平移缩放的xml
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"> <translate android:fromXDelta="0.0" android:toXDelta="50%" android:fromYDelta="0.0" android:toYDelta="150%" android:duration="3000" /> <scale android:fromXScale="1.0" android:toXScale="0.0" android:fromYScale="1.0" android:toYScale="0.0" android:repeatCount="3" android:pivotX="50%" android:pivotY="50%" android:startOffset="100" android:duration="3000" /> </set>
然后设置layout_animation.xml
<?xml version="1.0" encoding="utf-8"?> <layoutAnimation xmlns:android="http://schemas.android.com/apk/res/android" android:delay="0.5" android:animationOrder="random" android:animation="@anim/anim_set"/>
接下来定义主布局函数main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".LayoutDemo" > <GridView android:id="@+id/gridView" android:layout_width="match_parent" android:layout_height="wrap_content" android:layoutAnimation="@anim/layout_animation" android:stretchMode="columnWidth" android:numColumns="3" > </GridView> </RelativeLayout>
接下来我们定义GridView适配器,我们继承BaseAdapter
public class ImageAdapter extends BaseAdapter{ private Context c; private List<Integer> list=new ArrayList<Integer>(); public ImageAdapter(Context c){ this.c=c; this.initpic(); } public int getCount() { // TODO Auto-generated method stub return list.size(); } @Override public Object getItem(int arg0) { // TODO Auto-generated method stub return list.get(arg0); } @Override public long getItemId(int arg0) { // TODO Auto-generated method stub return list.get(arg0).intValue(); } @Override public View getView(int position, View v, ViewGroup arg2) { ImageView image=new ImageView(this.c); image.setBackgroundColor(0xFF000000); image.setImageResource(list.get(position)); image.setScaleType(ImageView.ScaleType.CENTER); image.setLayoutParams(new GridView.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT)); image.setPadding(3, 3, 3, 3); return image; } public void initpic(){ Field[] fields=R.drawable.class.getDeclaredFields(); for(int i=0;i<fields.length;i++){ if(fields[i].getName().startsWith("pic")){ try { this.list.add(fields[i].getInt(R.drawable.class)); } catch (IllegalAccessException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } }
这里读取资源文件图片使用了java.lang.reflect反射机制,这是java中较为重要的章节,同学们可以自行查阅
Activity GridView绑定适配器
public class LayoutDemo extends Activity { GridView gridview; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_layout_demo); gridview=(GridView)super.findViewById(R.id.gridView); gridview.setAdapter(new ImageAdapter(this)); } }
实现效果如下
下一章我们讲ListView动画实现,大家请持续关注哦
相关推荐
自android 己做的类似GridView 的控件,可以拖动排序,有删除动画
自己做的类似GridView 的控件,可以拖动排序,有删除动画.zip,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
自己做的类似GridView 的控件,可以拖动排序,有删除动画android源码,0分下载
包括侧滑栏SlidingLayout、ViewPager实现画廊、简单用viewpager实现画廊、圆形图片、简单的跑马灯动画效果、可拖拽的弹簧式水泡、可拖拽换位的GridView、下载图片、翻书页效果、叠楼效果、android 控件嵌套点击触发...
Android高级应用源码-自己做的类似GridView 的控件,可以拖动排序,有删除动画.zip
包括侧滑栏SlidingLayout、ViewPager实现画廊、简单用viewpager实现画廊、圆形图片、简单的跑马灯动画效果、可拖拽的弹簧式水泡、可拖拽换位的GridView、下载图片、翻书页效果、叠楼效果、android 控件嵌套点击触发...
DEMO源码内使用到的封装类,包括一个分页控件、一个列表控件GridView 、一个支持动画效果的ViewFlipper。下载此源码的朋友可以从Activity 里面将onKeyDown事件的代码放置 在GridView 里面,使其默认支持按键选中功能...
(1)频道管理(带拖拽,动画)Android 高仿 频道管理----网易、今日头条、腾讯视频 (可以拖动的GridView)附源码DEMO (2) 新闻列表中每个字段按照时间进行排列,并且带有悬浮效果 (3)城市选择列表中的城市...
源码参考,欢迎下载
本文实例讲述了Android编程基于自定义控件实现时钟功能的方法。分享给大家供大家参考,具体如下: 在学习安卓群英传自定义控件章节的时候,有一个例子是绘制时钟,在实现了书上的例子后就想看这个时钟能不能动起来。...
包括侧滑栏SlidingLayout、ViewPager实现画廊、简单用viewpager实现画廊、圆形图片、简单的跑马灯动画效果、可拖拽的弹簧式水泡、可拖拽换位的GridView、下载图片、翻书页效果、叠楼效果、android 控件嵌套点击触发...
android控件的抖动效果 很漂亮的ListView android 图像处理滤镜 照亮边缘特效 无闪烁启动画面 Android实现《天女散花》效果--(带源码) 天天动听 半透明Menu效果 Android 小項目之---Iphone拖动图片特效 (附源码) ...
gridView作为基本控件 WindowManager.addView的方式实现可拖动的view TranslateAnimation实现移动动画,动画完后更新adapter即可 主要的实现原理上面已经说明,源码中关键的地点也有注释,因此下面直接上源码。 ...
TransferImage 是一款模仿微博、微信、qq的高清图查看控件, 实现了在列表控件(ListView, RecycleView, GridView 等...)中 点击缩略图后播放过渡动画, 加载高清图, 加载高清图时同时显示加载进度条, 加载完成后显示...
2:TV端ListView,GridView控件的焦点自动处理,翻页动画等实现 3:ReclerView适配TV端,解决在Tv端该控件存在的焦点乱飞,选中异常等问题 4:自定义LinearLayout,RelativeLayout控件对子控件的焦点处理 5:其他...
5.3 动画实现 5.3.1 Tween动画 5.3.2 Frame动画 5.3.3 GIF动画播放 5.4 小结 第6章 Android数据存储 6.1 Android数据存储初探 6.2 数据存储之Shared Preferences 6.3 数据存储之Files 6.4 数据存储之Network 6.5 ...
安卓源码包android web应用Dialog对话框OCR图像识别listview相关EditText输入框Launcher 桌面45个合集: [四次元]Android Launcher 桌面分页滑动代码.rar [四次元]Android Launcher 源码修改可编译.rar [四次元]...
每一个活动都被实现 为一个独立的类,并且从活动基类中继承而来,活动类将会显示由视图控件组成的用户 接口,并对事件做出响应。大多数的应用是由多个屏幕显示组成,因而要用到多个Acti vity。 (1)Activity的相关...