位置: 编程技术 - 正文

Google官方抽屉DrawerLayout使用心得、踩坑经验以及定制化(google collections)

编辑:rootadmin
基础使用

推荐整理分享Google官方抽屉DrawerLayout使用心得、踩坑经验以及定制化(google collections),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:google抽奖的真实性,google chroom,google抽奖是真的吗,google抽奖是真的吗,谷歌抽索,google cho,google抽奖的真实性,google抽奖是真的吗,内容如对您有帮助,希望把文章链接给更多的朋友!

这里要介绍的是google的DrawerLayout,行为可见google官方应用如gmail,看手Q的抽屉,应该是根据android-undergarment项目来定制的一个控件。

Google Desgin GuildLines里面有介绍: a Navigation Drawer

DrawerLayout添加在主内容区的上层,作为parent,下面的第一个child是主内容区域,第二个child则可以是其他任何东西,需要作为抽屉的view则需要声明android:layout_gravity。

DrawerLayout的setScrimColor可以设置抽屉拉出时右侧主内容剩余区域上面盖的颜色(默认0x)。

高级应用

DrawerLayout默认只有在边缘的一个edge能够触发抽屉拉取的动作,而这个是通过ViewDragHelper这个类来实现的。

EDGE_SIZE是触发区域,默认dp,而BASE_SETTLE_DURATION和MAX_SETTLE_DURATION则是控制抽屉从打开到关闭之间的这个间隔。由于是私有静态常量,可以通过

Google官方抽屉DrawerLayout使用心得、踩坑经验以及定制化(google collections)

来设置左侧的触发区域,类&#;地可以修改右侧触发区域以及打开动画的间隔(当然你也可以直接去ViewDragHelper里面修改)。

不建议自己处理onTouch,会导致抽屉不能平滑跟手,比如stackoverflow上有给出以下这种方案的,简直坑爹:

坑爹的bug们初始化LayoutParam时可能出错多点触摸的时候DrawerLayout抛出一个ArrayIndexOutOfBoundsException,这是由于多点触摸时候requestDisallowInterceptTouchEvent和DrawerLayout的innerViews问题。自己在外面继承DrawerLayout然后改一下行为。有时候手动拉出抽屉时候,抽屉会卡在那里,拉不出来

这也是极其坑爹的一个bug,原因是触摸EDGE的时候,事件触发到抽屉出现有一个延时

抽屉有STATE_IDLE, STATE_DRAGGING和STATE_SETTLING三种状态,而这个偶然状况下,已经处于STATE_DRAGGING,而这个动作打开了抽屉dp并试图再次置回STATE_DRAGGING,

但这里由于mEdgeDragsInProgress[pointerId] & edge) == edge所以阻止了DrawerLayout回到STATE_DRAGGING。

解决方案是把DrawerLayout的ViewDragCallback中的mPeekRunnable进行修改,简单粗暴。

版权声明:本文为博主原创文章,未经博主允许不得转载。

ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.a Intent.ACTION_VIEW根据用户的数据类型打开相应的Activity。这里要打开一个网页,出现ActivityNotFoundException错误。android.content.ActivityNotFoundException:NoActivityfoundto

SparseArray 简介 SparseArray在写Android代码的时候发现当试图使用以int/Integer类型为key的HasMap的时候被提示使用SparseArray:UsenewSparseArrayObject(...)forbetterperformance查了一下,Spar

接入LeakCanary检测内存泄露 接入LeakCanary检测内存泄露前几天square在Github上发布了他们的内存泄漏检测库,LeakCanary,短短几天star已经接近,研究了一下后,发现其对QZone也很有

标签: google collections

本文链接地址:https://www.jiuchutong.com/biancheng/371060.html 转载请保留说明!

上一篇:应用MVP模式写出可维护的优美Android应用(mvp功能)

下一篇:SparseArray 简介(sparsomycin)

  • 计提所得税分录计提的时候金额比实际缴纳多
  • 个体户开电子税务局流程
  • 税收减免的定义
  • 企业税务包括哪些内容
  • 关税计入存货成本分录
  • 能直接从公司账户向个人账户转钱吗
  • 什么不属于损益类的会计项目
  • 防伪税控系统服务费发票在哪里开
  • 跨年度费用报销违反什么规定
  • 新准则前期差错更正
  • 保险收入如何做账务处理?
  • 赠品转做商品销售的账务处理如何做?
  • 生产车间计提固定资产折旧会计科目
  • 手撕发票的税点是多少
  • 企业所得税清算报备是什么意思
  • 没有税率的发票怎么开
  • 附加税包括哪些税种2021年
  • 结转完工产品成本的计算
  • 对公账户转钱出来
  • 按销售收入比例分摊进项税额按月还是按年
  • 如何获取openai api
  • hipsdaemon.exe是什么
  • 公司为实习生买保险列支什么科目?
  • 偷税漏税的会计要负什么责任
  • mmtray2k.exe有什么作用 是什么进程 mmtray2k进程查询
  • 股东怎么签合同
  • 自然人税收管理系统扣缴客户端app
  • 路径规划步骤
  • vue的slice
  • 层层剖析的近义词
  • 数据库查询框架
  • 苹果系统推送通知
  • 破解版微擎框架如何升级
  • 一般纳税人企业所得税税率2023
  • 关于实收资本的表述中,不正确的是
  • 建筑劳务公司适应什么工程
  • 公司分红给个人
  • 一般纳税人专票认证抵扣流程
  • 公司费用计入什么科目
  • python字符串isdigit
  • 织梦怎么用模板建站
  • mysql数据库死锁产生的原因及解决方案
  • 所得税汇算清缴怎么操作
  • 使用sqlserver创建数据库和删除数据库的实验总结
  • sqlserver2005数据库备份
  • 监控维护费用计入什么明细科目
  • 审计岗位能力要求是什么
  • 盖骑缝章的合同可以双面打印吗
  • 发票加上税额之后怎么还多了呢
  • 预缴税款是什么税款
  • 转增股股价
  • 跨期费用账务处理
  • 路桥公司会计核算办法
  • 装修费用摊销的会计分录怎么写
  • 单位内部食堂怎么举报
  • 扣除工程款说明
  • 党组织专项经费包括什么
  • 进项发票已入账进项税,但是未抵扣怎么办
  • 哪些合同不受法律保护
  • 行政单位收到银行存款利息的会计分录
  • 上月有留底税额时本月缴纳税款时怎么做分录
  • win2003系统要求
  • Windows7设置默认打印机
  • linux操作系统主要学什么
  • Win10装不上是什么原因
  • opengl 模型
  • web标准化
  • Bullet(Cocos2dx)之封装PhysicsWorld3D
  • cocos2dx3.3 便条提示语功能简单实现
  • js设置密码长度
  • powershell实战指南
  • u3d脚本语言
  • 简述shell命令提示符的组成
  • javascript数据类型有哪些
  • jquery日期控件onchange事件
  • js鼠标拖动窗口的做法
  • 安卓作业电量广播
  • 施工企业应缴纳的税金计算
  • 税控盘托管给百旺的弊端
  • 困难减免土地使用税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设