Android的DrawerLayout是android_support_v4.jar这个jar包里面的一个布局控件,大家都知道DrawerLayout可以实现从侧面滑动弹出一个布局,实现Android的抽屉效果,很多市场的App都需要抽屉效果的实现,比如QQ点击本人资料会从左边弹出一个线性布局,弹出来是由左往右在一个短暂时间内完成的一组动画。

DrawerLayout布局的最小阴影宽度为64dp,那么问题来了,如果我们这群程序员有这样一个需求,想让DrawerLayout全屏显示,全屏弹出一个抽屉效果,该如何实现呢?

我百度搜了一下DrawerLayout的全屏显示,发现并没有人去解决这个问题,我那个揪心啊,找了好久,心好累,然后只能慢慢自己解决了…

灵机一动,突然发现了一个好方法,既然Android自带的DrawerLayout不行,Android的源代码又不能更改,所以我们可以自己做一个出来啊,这里我定义为MyDrawerLayout,接下来就是见证奇迹的时刻了…因为我要做一件大事,这件大事就是抄抄抄,抄代码…哈哈哈!

首先,找到DrawerLayout这个的源代码,然后一字不漏的全部抄到自己的MyDrawerLayout中,把所有的DrawerLayout改成MyDrawerLayout,这样一来,属于我们自己的MyDrawerLayout就完成了,想怎么改就怎么改,是不是很赞,现在我们只需要把里面的一个private static final int类型的属性MIN_DRAWER_MARGIN(就是阴影最小宽度)改掉就大功告成了,现在问题还是有,到底什么问题呢??!!卧槽,我居然发现我找不到DrawerLayout这个的源代码,哎呀尼玛的,怎么会看不到呢,因为android_support_v4.jar是外部支持导入进来的jar包,所以你按住Ctrl+鼠标左键点DrawerLayout还是看不到的,会显示找不到该类的内容,小江带你继续当抄袭专家…哈哈哈哈

有两个方法:

第一种:

  Android SDK在extras目录中同样提供了support包的源码,当然前提是你使用Android SDK Manager下载过了Android Support Library。当我们使用到support包的时候,它一般都会静静的躺在libs目录里,这个时候我们只需要在同一个目录下建一个properties文件,名字跟你所用的support jar包相同,即android-support-v4.jar会有一个对应的android-support-v4.jar.properties的文件


  在里面输入android-support-v4.jar路径就行了,源码在android-sdk目录下的extras\android\compatibility\v4\src,这是我的源码路径,你根据情况修改即可


  刷新工程在打开工程,然后你找到DrawerLayout,按住Ctrl点击DrawerLayout


第二种:

很简单,直接去根目录查找,先找到SDK,具体目录如下:

...\sdk\extras\android\support\v4\src\java\android\support\v4\widget\DrawerLayout.java

打开它,然后全选复制粘贴到自己的MyDrawerLayout中,修改代码即可!


好了,废话不多说,最精彩的来了,上效果图!!!


第一张:还没打开MyDrawerLayout:



第二张:打开的过程:



第三张:打开完成后:



讲得很清楚很简单了,要代码的同学可以找我要,我的QQ是1018433564


自行下载~谢谢大家捧场~~


oh no 又11点半了,吃饭继续码代码了!!!



更多相关文章

  1. android 自定义控件学习之三 控件布局常用知识总结
  2. Android软件广告屏蔽方法及代码
  3. Android studio使用技巧(二:国际化以及代码重构)
  4. Android基础-四种基本布局和自定义控件的步骤
  5. Android的反编译和代码混淆
  6. 在Android上实现HttpServer的示例代码

随机推荐

  1. EventBus Usage
  2. Android视频教程
  3. Using smem on Android
  4. android上不错的开源库
  5. webservice1(队列上传 呼叫)
  6. Service Intent must be explicit的解决
  7. Android(安卓)根据一个传入的String选择s
  8. android full screen
  9. Android硬件抽象层学习
  10. Android 相对布局 简单编程