[仿南航app开发日记8]解决部分bug
来源:互联网 发布:淘宝750海报图片 编辑:程序博客网 时间:2024/06/05 14:15
透明进度条bug
我的透明进度条原理是不断重绘一个背景图片,然后使用Matrix旋转图片,原先的代码是死循环,代码如下:
protected Void doInBackground(Void... params) { while( true ) { try { Thread.sleep(100); } catch(InterruptedException e) { e.printStackTrace(); } publishProgress(); } return null; }
这样就有一个bug,因为是死循环,当ProgressDialog被dismiss掉之后这个循环并不会销毁,而是一直在循环,这样造成的一个bug就是使用了透明进度条之后侧滑菜单点击就没有反应了,并且,透明进度条在Activity下次启动并不会有旋转的效果,这里修改的办法是将这个while(true)改成用变量判断:
while( mLoop )
然后重写ProgressDialog的dismiss()方法:
public void dismiss() { super.dismiss(); mProgressView.setLoop(false); }
这样在这个ProgressDialog被销毁之后,将这个循环也关掉。
透明进度条在小米手机上显示黑屏背景
这个透明进度条在使用了style去除背景之后在有些手机上显示正常,但是在小米手机显示黑屏:
经过一番排查,原先设置的那个主题有问题:
<style name="LoginDialogTheme" parent="Theme.AppCompat.DayNight.Dialog"> <item name="android:windowTitleStyle">@null</item> <item name="android:windowBackground">@null</item> </style>
修改成如下这样才行:
<style name="LoginDialogTheme" parent="Theme.AppCompat.DayNight.Dialog"> <item name="android:windowNoTitle">true</item> <item name="android:windowBackground">@color/progressColor</item> </style>colors.xml<color name="progressColor">#0000</color>
效果如下:
完美解决
0 0
- [仿南航app开发日记8]解决部分bug
- Android开发bug日记
- IOS开发—App 在 IOS 8 的simulator运行时,定位卡死bug解决
- Android校园APP开发日记
- [仿南航app开发日记1]开篇-总体布局分析
- [仿南航app开发日记2]主界面完成
- [仿南航app开发日记3]侧滑菜单实现
- [仿南航app开发日记6]自定义背景透明进度条
- ios 10 app抽风的bug解决
- 解决APP界面卡死Bug
- 解决APP界面卡死Bug
- 解决APP界面卡死Bug
- bug日记
- 背单词App开发日记0
- 背单词App开发日记1
- 背单词App开发日记2
- 背单词App开发日记3
- 背单词App开发日记4
- jQuery点击“+”“—”加减号改变表单数值
- php从数组中取出一段 之 array_slice
- Win7 64bit+OpenCV2.4.11+VS2010配置环境
- NamedParameterJdbcTemplate
- Xcode 8 安装插件(KSImageNamed)闪退
- [仿南航app开发日记8]解决部分bug
- TCP/IP详解--TCP首部选项中时间戳选项
- iOS 将一串 毫秒数 字符串 转换成 分 秒 毫秒 的格式*
- 常用正则表达式
- 艺术编程-技术之声第一期
- kafka入门
- 使用Node.js+Socket.IO搭建WebSocket 实现多人群聊
- 版本更新的弹窗显示功能
- SparkStandalone模式安装