android GridView单个item动画的实现以及样例

来源:互联网 发布:淘宝脐橙店招图片大全 编辑:程序博客网 时间:2024/05/17 23:50

在很多的APP中用Gridview写的菜单会在进入是有一个很炫的动画效果!!

正巧,我做一个APP中,ios端实现了动画效果!老板就让我也要加上动画!!在网上搜索了一翻,没有合适的的做法!!

于是我就自己想了两个解决方案!!

一个是我想Gridview 条目是通过adpter 一个一个的产生出的!那就是说我可以在 adpter 中的getview()方法中给 每个产生的item 添加一个动画效果!!

由于这个这个想法,于是我写了一样例!!



<pre name="code" class="java">    <span style="color:#ff0000;">private int duration = 1000;</span>
<span style="color:#ff0000;">    private Animation slide_bottom_to_top,slide_top_to_bottom;</span><span style="font-family: Arial, Helvetica, sans-serif;"><span style="color:#ff0000;">  </span>       </span>
      public LauncherAdapter(Context context, String logging_Status) {mInflater = LayoutInflater.from(context);
                 //引入自上到下的动画<span style="color:#ff0000;"> slide_top_to_bottom=AnimationUtils.loadAnimation(context, R.anim.slide_top_to_bottom);</span></span>
            //引入自下到上的动画<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255); color: rgb(255, 0, 0);">slide_bottom_to_top = AnimationUtils.loadAnimation(context,R.anim.slide_bottom_to_top);</span><span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">this.logging_Status = logging_Stats;</span>
          。。。。。。。。。。。。。。。。。
@Override
      public View getView(int pos, View convertView, ViewGroup arg2) {// TODO Auto-generated method stubViewHelper helper;</span>if (convertView == null) {</span>convertView = mInflater.inflate(R.layout.my_management_item_one,null);helper = new ViewHelper();helper.mImage = (ImageView) convertView.findViewById(R.id.tab_launcher_item);helper.mText = (TextView) convertView.findViewById(R.id.tab_launcher_itemtext);convertView.setTag(helper);
</pre><pre name="code" class="java">                <span style="color:#ff0000;">       if (pos % 2 == 0) {slide_bottom_to_top.setDuration(duration);convertView.setAnimation(slide_bottom_to_top);} else {slide_top_to_bottom.setDuration(duration);                    convertView.setAnimation(slide_top_to_bottom); }</span>} else {helper = (ViewHelper) convertView.getTag();}helper.mImage.setImageResource(icons[pos]);helper.mText.setText(texts[pos]);return convertView;}
</pre> 以上标红的代码就是需要在adpter 中实现的代码 哦,对了还有资源文件的代码<p></p><p></p><pre name="code" class="java">slide_top_to_bottom.xml

<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android"    android:interpolator="@android:anim/accelerate_interpolator" >    <translate        android:duration="300"        android:fromYDelta="-100%"        android:toXDelta="0" />    <alpha        android:duration="300"        android:fromAlpha="0.0"        android:toAlpha="1.0" /></set>
slide_bottom_to_top.xml
<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android" android:interpolator="@android:anim/accelerate_interpolator">      <translate android:fromYDelta="100%" android:toXDelta="0" android:duration="300" />      <alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="300" />  </set>  

呵呵,这些实现的是第一个item从下往上滑入,第二个Item从上往下滑入,然后每个依次循环的效果

不太会弄动态图,无法给大家截图!!嘿嘿!不过这些都是我自己亲测了的!肯定能用的!!

这只是一个很简单的动画效果,相信大家能明白这个以后,会写出很多更炫的动画效果,我这里只是抛砖引玉!!

关于另一种方案我正在测试如果成功,下次再发!!


本人并非大神,如有错误请大家指出!!谢谢!!




0 1
原创粉丝点击