`

Android开发:GridView与ListView互相切换(动画效果)(转)

 
阅读更多

http://www.sunyifeng.com/blog/post/19.html 

 

对于一些软件来说,希望达到 GridViewListView这两种方式来显示相同的内容,在内容较少时,用户可以选择九宫格(GridView)方式浏览,在内容较多时可以切换为列表浏览(ListView),那么,这种方式改如何切换呢.

   我们知道,对于任意一个ui组件来说都是View的子类,View包含一个方法View.setVisibility (),该方法可以控制View的显示或者隐藏,那么只要在buttonclick事件中加入对于相应View的显示/隐藏控制即可

切换为GridView,ListView隐藏

切换为ListView,GridView隐藏

那么,该如何布局呢?很简单,先假设只有GridView来布局,布局完成之后,GridView之后在更上一个完全相同属性的listview就可以了.注意在activity oncreate时就需要将其中一个隐藏

布局文件如下


 

接着,我们就可以在buttononclick事件中通过setVisibility(View.GONE)来隐藏了

当然,为了让界面更好看

我们还可以为这两个View加上动画以girdview为例

gridview.setLayoutAnimation();

这个方法就可以为对应的view加上动画了

我这里写一个模拟3d的切换动画生成对应的layoutanimationController

通过Rotate3d这个类实现

1
2
3
4
5
6
7
8
9
public static LayoutAnimationController getgridlayoutAnim()
  {
  LayoutAnimationController controller;
  Animation anim=new Rotate3dAnimation(90f,0f,0.5f,0.5f,0.5f,false);
  anim.setDuration(500);
  controller=new LayoutAnimationController(anim,0.1f);
  controller.setOrder(LayoutAnimationController.ORDER_NORMAL);
  return controller;
  }

 

 

 

将这个layoutanimationcontroller传入后再试试?

动画还是挺炫的呵呵

image

p.s 有点卡是因为只是模拟器,真机非常流畅

分享到:
评论

相关推荐

    使用RecyclerView实现GridView和ListView混排的效果

    在Android开发中,RecyclerView是一个非常重要的组件,它用于展示可滚动的数据集,具有高效和灵活的特点。本教程将深入探讨如何使用RecyclerView实现GridView和ListView混排的效果,这在设计复杂界面时尤其有用。 ...

    Android中利用ListView和GridView实现列表视图和网格(图标)视图的相互切换显示

    实际开发中,你可能还需要考虑更多细节,比如视图切换时的动画效果、数据加载策略(如分页加载)、不同视图下item的点击事件处理等。在MyFileDemo项目中,你可能会找到具体的代码实现和更多优化技巧。通过不断实践和...

    androidListview嵌套Gridview

    在Android开发中,ListView是一种常用的控件,用于展示大量数据列表。然而,有时我们需要在列表项内部展示更复杂的布局,这时就会用到ListView的嵌套。在这个场景中,我们经常会在ListView的一个条目中嵌套一个...

    Android listview和宫格list切换

    本项目“Android listview和宫格list切换”提供了一种实现这两种视图之间平滑切换的方法,并且包含动画效果,使得用户体验更为流畅。 ListView是Android中的一个基础组件,它能够以垂直滚动列表的形式展示数据。每...

    Android高级应用源码-Listview,Gridview空数据处理.zip

    在Android开发中,ListView和GridView是两种常用的列表控件,用于展示大量的数据。然而,在实际应用中,当数据为空时,这两个控件的表现通常不尽如人意,它们可能只显示一个空白的界面,给用户带来困惑。这个...

    Android高级应用源码-Listview,Gridview空数据处理.rar

    在Android开发中,ListView和GridView是两种非常常用的控件,用于展示可滚动的多行或多列数据。这个压缩包“Android高级应用源码-Listview,Gridview空数据处理.rar”显然包含了针对这两种控件在没有数据时的处理方式...

    Android_UI_GridView

    - 添加动画效果以提升用户体验,例如添加进入/退出动画、滑动切换动画等。 10. 适配不同屏幕尺寸: - 根据不同设备的屏幕密度和尺寸调整列数和单元格大小,确保在各种设备上表现良好。 通过以上步骤,你可以有效...

    安卓滑动菜单SlidingMenu+Fragment+从SQLIT中提取图片到GridView(ListVIew)

    本教程将探讨如何利用`SlidingMenu`库、`Fragment`和`SQLite`数据库来实现一个具有滑动侧边菜单、多视图切换以及从数据库加载图片到`GridView`或`ListView`的功能。 首先,`SlidingMenu`是一个流行的Android库,它...

    Android GridView + ViewFlipper布局界面,模仿“机锋市场.rar

    在Android开发中,GridView和ViewFlipper是两个重要的布局组件,它们可以被巧妙地结合以创建出复杂的用户界面。在本示例中,“Android GridView + ViewFlipper布局界面,模仿“机锋市场”是一个源码项目,旨在帮助...

    Android实现横向ListView

    如`androidx.recyclerview.widget.LinearLayoutManager`的`setOrientation()`方法可以设置RecyclerView为横向布局,或者`HorizontalGridView`等,它们可以帮助开发者快速实现横向ListView功能,同时提供更丰富的特性...

    android基本动画大盘点

    通过setLayoutAnimation()方法,我们可以为一个LinearLayout、GridView或者ListView设置布局动画,例如淡入淡出、缩放等效果。 Tween Animation,也称为补间动画,用于改变View对象的属性,如位置、大小、透明度等...

    android开发揭秘PDF

    第1章 Android开发简介 1.1 Android基本概念 1.1.1 Android简介 1.1.2 Android的系统构架 1.1.3 Android应用程序框架 1.2 OMS介绍 1.2.1 OPhone介绍 1.2.2 Widget介绍 1.3 小结 第2章 Android开发环境搭建 2.1 ...

    android开发资料大全

    仿QQ--tab切换动画实例 Android 小项目之---猜扑克牌游戏 (附源码) fleep滑动切换tab(切换带动画) 通过SurfaceView实现像Gallery手势滑动图片效果 Android自定义Gallery,实现CoverFlow效果 高仿网易新闻顶部...

    android常见动画

    布局动画在添加或移除View时自动执行,为ListView、GridView等列表控件提供动态效果。可以使用`android:layoutAnimation`属性在XML布局中配置,或通过`LayoutAnimationController`在代码中设置。 5. **动画集合...

    老罗Android教程:六.常用UI编程源代码

    此外,还会涉及主题和样式、动画效果、触摸事件处理等进阶话题,帮助开发者提升Android UI设计的技能。 总之,这个教程对于希望深入了解Android UI编程的开发者来说是一份宝贵的资源,通过实践这些源代码,可以快速...

    Android代码-GridViewViewFlipper布局界面模仿“机锋市场.zip

    在Android开发中,GridView和ViewFlipper是两个非常重要的组件,它们可以被巧妙地结合以创建出丰富的用户界面。在“机锋市场”的界面设计中,我们常常能看到类似的应用,这种设计不仅美观,而且提供了良好的用户体验...

    安卓listview相关相关-ListviewGridview空数据处理.zip

    在安卓开发中,ListView和GridView是两种常用的列表控件,用于展示大量的数据。它们都是基于Adapter的,可以灵活地处理各种数据集,并且通过ViewHolder优化性能。然而,当这些列表没有数据时,用户看到的可能只是一...

    可编辑GridView

    在Android开发中,GridView是一种常用的布局控件,它允许我们以网格的形式展示数据。"可编辑GridView"是指在默认的GridView基础上添加了编辑功能,即用户可以长按某个项目进入编辑模式,对其中的元素进行修改或删除...

    android 动画集合和多个控件的使用源码

    同时,对于列表(ListView)和网格(GridView),可以使用动画库,如`androidx.recyclerview.widget.RecyclerView`的Item动画,使得数据项的插入、删除或移动更具动态性。 除了基本的动画,Android还提供了Transition...

    为ViewGroup的子视图添加悦目的动画效果

    在Android开发中,为了提升用户体验,为用户界面增添生动性和吸引力,我们经常需要对ViewGroup的子视图应用各种动画效果。"为ViewGroup的子视图添加悦目的动画效果"这一主题,主要涉及到Android的动画系统,特别是`...

Global site tag (gtag.js) - Google Analytics