首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

可动态格局的Android抽屉之基础

2012-06-27 
可动态布局的Android抽屉之基础?本文来自http://blog.csdn.net/hellogv/?,欢迎转摘,引用必须注明出处!????

可动态布局的Android抽屉之基础

?

本文来自http://blog.csdn.net/hellogv/?,欢迎转摘,引用必须注明出处!??????

?????? 以前曾经介绍过《Android提高第十九篇之"多方向"抽屉》,当这个抽屉组件不与周围组件发生压挤的情况下(周围组件布局不变),是比较好使的,但是如果需要对周围组件挤压,则用起来欠缺美观了。

?????? 如下图。在对周围压挤的情况下,抽屉是先把周围的组件一次性压挤,再通过动画效果展开/收缩的,这种做法的好处是快速简单,坏处是如果挤压范围过大,则效果生硬。

可动态格局的Android抽屉之基础

?

????? 本文实现的自定义抽屉组件,主要针对这种压挤效果做出改良,渐进式压挤周围组件,使得过渡效果更加美观。如下图。

可动态格局的Android抽屉之基础

?

?

?

?

?

?

本文实现的抽屉原理是酱紫:

1.抽屉组件主要在屏幕不可视区域,手柄在屏幕边缘的可视区域。即 抽屉.rightMargin=-XXX + 手柄.width

2.指定一个周围组件为可压挤,即LayoutParams.weight=1;当然用户也可以指定多个View.

3.使用AsyncTask来实现弹出/收缩的动画,弹出:抽屉.rightMargin+=XX,收缩:抽屉.rightMargin-=XX

总结,本文的自定义抽屉虽然对压挤周围组件有过渡效果,但是比较耗资源,读者可以针对不同的情况考虑使用。

本文的源码可以到http://download.csdn.net/detail/hellogv/3615686?下载。

接下来贴出本文全部源代码:

main.xml的源码:

??
  • ????}</span>??

    后面还会继续介绍如何在Panel加入拖拉效果的处理!

  • 热点排行
    Bad Request.