最近开发中的一些坑#1

本文总结了在Android开发中遇到的一些问题,包括下载进度item无法长按、ViewPager无法滑动、UIL图片加载错误、saveLayer性能问题以及不应主动调用on*方法等,并提供了相应的解决方案。
摘要由CSDN通过智能技术生成

牢骚

最近回学校, 听说阿里好多实习生都被拒了, 不过大概都被捡漏了, UC这方面还没动静, 不知道是打算把我当临时工使还是怎么, 有点烦躁, 还是得加强自己的能力才行.
最近半年一直在做音乐播放器项目, 开发期间遇到了许多奇怪的问题, 有些我单独写了文章, 有些只是临时找到了解决方法, 没有仔细研究, 这里先总结一下.

下载进度item无法长按

下载item

上面是一个比较常见的下载item, 开发中我们发现经常出现不能对其进行长按操作的情况, 表现就是长按后长按被取消.
追踪源码, 最可疑的地方就是requestLayout.
一个控件调用requestLayout, 很可能让他的父控件也调这个, 有可能导致最外围的item把自己的状态清除掉.
在很多情况下都会导致控件调用这个方法, 比如setText, setImage*, 当时发布比较赶, 没有仔细看TextView的源码具体是个什么情况, 但是有一点可以确定, TextView在宽度为match_parent并且singleLinetrue的情况下给他设置文本是不会调用requestLayout的, 这是我当时测试的结果, 我们解决这个问题的方法就是让图中的所有文本都只允许单行, 且宽度match_parent, 至于右下角, 那是将gravity设为right了, 两个TextView在一个FrameLayout里.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值