魏興
魏興
> 1、降低Overdraw(过度绘制),减少不必要的背景绘制 > 2、减少嵌套层次及控件个数,使用include共用布局方法 > 3、使用Canvas的clipRect和clipPath方法限制View的绘制区域 > 4、通过imageDrawable方法进行设置避免ImageView的background和imageDrawable重叠 > 5、借助ViewStub按需延迟加载 > 6、选择合适的布局类型 > 7、熟悉API尽量借助系统现有的属性来实现一些UI效果 还有include、merge标签没有说到,
不能在还没有调用 `Looper.prepare()` 方法的线程中创建` Handler`。 因为抛出异常的地方,在` mLooper` 对象为` null `的时候, 会抛出异常。说明这里的` Looper.myLooper(); `的返回值是` null`。 只有调用了` Looper.prepare() `方法,才会构造一个` Looper `对象并在 `ThreadLocal` 存储当前线程的 `Looper` 对象。 这样在调用 `Looper.myLooper()` 时,获取的结果就不会为` null`。 链接:[Handler的工作原理,为什么在子线程中执行 new Handler() 会抛出异常?](https://blog.csdn.net/willway_wang/article/details/81838569)
使用了,但是无法输入,是这个版本不支持输入吗?
`setShowPauseCover `函数虽然可以解决问题,但是不应该是这个解决方案(需求不能被砍掉,产品不同意)。目前是通过延迟播放来解决这个问题和大屏拖动进度导致播放结束后切回小屏也无法正常播放的问题。
原因可能在于大屏和小屏在切换过程中,设置暂停对封面图时,此刻并没有对应的UI渲染出来,导致了上面的错误。
全屏播放结束时,在全屏的时候播放下一个视频的时候,也出现了只有声音,视频区域黑屏的现象,不知道是怎么回事?
你自己写的权限申请有遇到过这种问题吗?
能具体一点吗?
因为相关的工具类代码量不是很多,需要的话直接复制即可,拆包的话感觉没有什么必要性,如果需要人比较多,我再考虑一下吧!
因为是使用系统相册,目前仅支持选择图片