- 博客(12)
- 收藏
- 关注
原创 Android WebView 播放视频黑屏的非技术原因
Android WebView 播放视频黑屏的非技术原因今天遇到的视频,播放声音正常,视频是黑屏。原因:虽然视频格式是.mp4,但视频编码是HECV。谷歌 chrome 支持的是H 264的视频编码格式。所以拿转码工具转一下就好了。(Android的WebView就是用的Chrome内核)出问题的视频,用PC端的chrome播放也是黑屏。以后再遇到这类问题,先拿PC端chrome试试。把视频文件下载查看就发现格式不对了:转码后这个格式就能播放:...
2021-08-25 14:29:58
622
原创 Android系统日历读取各厂商农历年重复event
农历按年重复事件读取日历业务,发现android手机设置按年重复事件,各个厂商都支持按农历年重复,比如发生时间是每月正月十五,但读取出来,日期都是设定的公历日期,在第二年就肯定错了。比如用户添加一个事件,设定2020年正月十五按农历年重复。系统日历读取出来,事件是2020年的2月8号按年重复。由于我们不知道是按农历年重复,我们就会认为到2021年也是2月8号。实际上系统里显示第二年的对应事件在是2月26号21年的正月十五。这种情况比较常见的是用户设定了一个农历生日。各个厂家也有不同的设定农历重复的选项
2021-03-04 16:24:13
604
原创 以RFC2445标准解析Android系统日历duration
Android系统日历事件以RFC2445标准解析duration参考代码读取到的日历事件,duration按照RFC2445标准解析成准确时长读取到的日历事件,duration按照RFC2445标准解析成准确时长最近在做系统日历读取功能,发现duration字段以RFC2445标准设置的,各厂商应用的格式不一定一致。比如同样是一小时,有的用P1H代表一小时,有的用的P3600S代表3600秒,也是一小时。所以根据标准,写了个解析范例方法,目前已经上线用了一段时间,没有发现问题。方法解析出时长返回单
2021-03-01 13:57:30
931
原创 [Android]TabLayout布局自带的padding和height问题
TabLayout布局自带的属性最近用TabLayout,发现设置简单的CustomView之后,有一些奇怪的边距。并不是按照你预想的那样。fucking source code发现了两个要注意的地方。(1) Tab默认自带横向边距问题如上图,看到我就给了一个简单的View,结果上下左右全都多了边距。跟源码发现,是mTabPaddingStart和mTabPaddingEnd在初始化的时候,会自动给一个默认值。 mTabPaddingStart = a.getDimensionP
2020-06-11 16:14:48
5953
原创 [Android]EditText最简单的限制输入为英文和数字(非中文)
EditText想默认要用户输入非中文。很多大神提供的办法都比较复杂。来个简单的,可以看见的密码输入(输入后不是****),不就是最大限度接近这个需求的么?editText.setInputType( InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD);...
2020-02-28 18:39:43
2257
原创 Glide加载后台图片失败,但url可以在浏览器和微信内正常打开图片
Glide加载一些图片正常,但有一个地方图片总是不行。报错也特别简单,就一句:GlideException: Failed to load resource。。。而且加了error的listener也没有收到更详细的错误信息。把url复制出来,发现浏览器和微信打开都正常。Glide版本是4.3.1后debug发现是,总出问题的那个,后台返回的 url 前面多了一个空格!!!...
2020-02-18 11:25:01
1379
原创 [ANDROID]记Activity之间的背景getBackground设置alpha会相互影响的bug
这是一个系统的问题(bug ?)简述现象解决办法验证实验简述现象项目里发现有时候一些页面设置的白色背景会突然没有,没有找到复现步骤。一旦出现就很难恢复,也没有找到复现步骤。后来发现是因为某些页面里对一个view这样操作导致:bg.getBackground().setAlpha(0);但出现的前提是,这个对应的bg是在xml里设置的背景color,且背景color值和受影响的页面col...
2019-12-03 16:13:41
624
原创 [ANDROID]手撸一个顺滑的nestScrollingParent2的nestScrollLayout
scroll,fling,两种手势都顺滑无缝嵌套滑动的Layout嵌套滑动,就要顺滑,就要无缝,就要nestScrollingParent2第一步,用NestedScrollingParent的第一代版本实现一,先实现最基本的Scroll机制。fling在第二步。其他一些不复杂的,覆盖并依靠NestedScrollingParentHelper的代码onMeasure里为什么要做处理二,fling...
2019-10-30 17:39:28
861
1
原创 [android] TextView 自定义字体 另类统一方案
TextView一次性设置自定义字体-在res/font里的办法一般设置自定义字体的办法我遇到的实际情况工友总是跑的很‘快’没法使用的第二种方式(将font放在asset下)本民工最终的解决办法,干净利落!死磕过程中遇到的难题一般设置自定义字体的办法一般有两种方式:1,将font文件放在res/font/目录下,然后在布局xml中这样写:<TextView a...
2019-09-26 09:56:12
523
1
原创 [ANDROID] RadioButton RadioGroup 组合多重使用的问题
做一个单选表格和一般的单选框不一样,这次要做一个单选的表格,有两排,这样:因为RadioGroup是LinearLayout,所以这种两排只能选一个,需要两个RadioGroup,左边是一个RadioGroup包含几个RadioButton,右边是另一个RadioGroup。为了两个RadioGroup每次只选中一个,于是做如下处理: mRadioGroupLeft.setO...
2019-09-08 10:48:18
404
原创 [ANDROID] EditText 自动获取焦点(弹出软键盘)的控制问题
非对称式focus设置EditText 在页面启动时一般会自动获取焦点,就会弹出软键盘。如果不希望页面启动就自动弹出软键盘,可以对 EditText 如下设置:EditText.setFocusable(false);果然就OK了。不会自动弹出界面了。但这样之后,再点击EditText就没有反应了,无法呼出软键盘。于是,理所当然滴再对称地反向设置一下,觉得应该就OK了吧:EditT...
2019-09-06 21:51:55
1527
原创 [android]bug: view remove后仍可见
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Ma...
2019-08-09 21:41:44
1042
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人