安卓开发过程中遇到问题总结二
2016-03-10 10:16
531 查看
1.android 自定义view报如下错误:java.lang.IllegalStateException: Underflow in restore
原因:在自定义view里面调用了如下方法来保存画布的bitmap图像;mCanvas.restore()
解决方法:改成:
mCanvas.save();
mCanvas.restore();
Okay!解决!
2.使用Intent传递数据量大时(尤其是bitmap对象),app没反应?
android四大组件之间Intent传递数据,数据不能过大,基本要小于1M,不然会导致程序黑屏,ANR.3.this.requestWindowFeature(Window.FEATURE_NO_TITLE);代码中去掉标题栏使用时报错?
当我们的Activity是继承自Activity或者是FragmentActivity时不会有问题;但当我们继承的是AppCompatActivity时就会报错,解决方法是 getSupportActionBar().hide()或者是这是主题为Theme.AppCompat.Light.NoActionBar;
4.在使用第三方库经常报有一些v4,v7包冲突问题?
在封装library的时候,尽量不要引入第三方包,v4,v7等自带的包也是一样尽量不要引入,避免以后工程依赖的时候,包或者包内文件产生冲突。对于冲突的包,改成一样的就可以解决了。
5.Can’t load native library.CPU arch invalid for this build?
CPU_ABI : armeabi, armeabi-v7a, arm64-v8a, x86, x86_64, mips, mips64.复制你的.so文件到/libs/(armeabi|armeabi-v7a|x86|…)
Android Studio复制到jniLibs文件夹下,eclipse 复制到libs文件夹下。
注意当你使用多个第三方库的时候时,而且这些库有使用.so文件,创建文件夹时应保证【最少原则】。
比如:一个库中.so文件支持armeabi,armeabi-v7a,x86,另外一个库却只支持armeabi-v7a这样也会造成该问题的产生,因为支持x86的机器会在另一个库中找不到.so文件而保错。
6.Android应用第一次安装成功点击“打开”后Home键切出应用后再点击桌面图标返回导致应用重启问题
[code]/*在应用程序设置<action android:name="android.intent.action.MAIN" />应用程序入口Activity的onCreate方法中加入上面的判断,完美解决应用程序多次重启问题。 */ if((getIntent().getFlags() & Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT) != 0){ finish(); return; }
7.Fragment中的setUserVisibleHint不执行?
1.viewpager+fragment模式setUserVisibleHint()方法是执行的,其中第一个fragment的该方法执行两次,第一次在onAttch()方法执行之前,第二次在onCreate()方法执行之后,在onCreateView()方法执行之前。当我们把fragment缓存起来时,该方法还是会执行的。2.当我们自己切换fragment时,transition.add(R.id.main_content, mainFragment);(获取用replace),fragment 中的setUserVisibleHint()是不执行的。
相关文章推荐
- SQLServerDBA十大必备工具---让生活轻松点(转)
- Appium&Android SDK&Eclipse环境运行TestCase&真机实战(一)
- 关于Android学习实用的链接
- There is no getter for property named 'userIds' in 'class java.lang.String'
- PAT-Find Coins (25)
- view controller内部全部视图旋转
- MongoDB 增量备份方案
- HTML 讲师笔记--第三次试讲
- sql语句获取今天、昨天、近7天、本周、上周、本月、上月、半年数据
- ubuntu 安装 avahi服务
- iOS开发--验证码
- ListView多布局展示bug
- 解决Linux动态链接库的无法加载问题
- jquery提高执行效率(2)
- 第 5 章 事件响应,让网页交互
- drop、delete、truncate、alter表时show processlist出现Waiting for table metadata lock状态
- 对产品管理和产品设计的总结
- 简述c#之sealed 修饰符
- 【分享】4412开发板-嵌入式Linux开发须要掌握的基础知识和技能
- 反射簡單應用例子[轉]