【android】开发中遇到的一些问题
1:华为输入法,输入框为ACTION_DONE模式,ActionId是 UNSPECIFIED
EditText对象.setImeOptions(EditorInfo.IME_ACTION_DONE)
回车键返回的ActionId是 IME_ACTION_UNSPECIFIED;(正常为IME_ACTION_DONE)
2:红米手机调用系统拍照,导致页面重建,丢失数据
在调用拍照之前,保存当前页面的数据。咱是保存到SharedPreference里面,然后在onRestoreInstanceState函数里重新取值、赋值
3:视图的setBackgroundDrawable(对象)资源不能复用
比如列表中我们文字的背景颜色都是一样的, 这时候,我们希望能用Drawable把这个背景缓存起来,然后挨个TextView去赋值,
实际上,只有最后一个赋值成功。解决之道是直接使用seBackGroundResource

4:Activity的startActivityForResult;在Fragment的OnActivityResult不能捕获
因为Activity的startActivityForResult对requestCode左移了16位,因此Activity的OnActivityResult里对requestCode右移了16位进行补偿
Fragment的OnActivityResult自然判断不了被Activity位移后的requestCode,解决之道是fragment使用自己的startActivityForResult

5:android 6.0 老的http请求模块无法找到。
android 6.0的sdk里面删除了apche的请求模块,比如 org.apache.http.Header 就找不到了。
解决之道是在gradle里根节点加入
android {
useLibrary 'org.apache.http.legacy'
}
实测加入上面一句,重新Sync就行了
如果你还是不行的话,参考知乎上详细的解决步骤:https://www.zhihu.com/question/35597452
6:android 6.0 静态内部类访问失败
静态内部类在5.x以及以下的版本都正常,但是在6.1上报错,没有访问权限
解决之道是把静态内部类声明为public。
7:Html.fromHtml 尖括号<丢失
输入
<font color='#ec1e1e'><</font> ,
输出, (尖括号消失了)
解决之道是在使用前,对尖括号转义掉
public static String transBrackets(String str) {
if (TextUtils.isEmpty(str))
return "";
return str.replace("<", "<");
}
8:android studio 2.0打出来的debug包,在5.0以下的机型上打开报错。
错误提示:
Unable to instantiate application com.android.tools.fd.runtime.BootstrapApplication
原因:
android studio 2.0默认使用的是com.android.tools.build:gradle:2.0.0
这个版本使用了5.0的特性来支持instant run。
解决之道是使用release模式。
【android】开发中遇到的一些问题的更多相关文章
- Android学习探索之Java 8 在Android 开发中的应用
前言: Java 8推出已经将近2年多了,引入很多革命性变化,加入了函数式编程的特征,使基于行为的编程成为可能,同时减化了各种设计模式的实现方式,是Java有史以来最重要的更新.但是Android上, ...
- android开发中fragment获取context
在用到fragment时无法使用.this来指定当前context内容,android开发中fragment获取context,可以使用getActivity().getApplicationCont ...
- java中的反射机制在Android开发中的用处
JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意一个方法和属性:这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反 ...
- Android开发中的输入合法性检验
Why ? 合法性检查对于程序的健壮性具有重要作用.在Android开发中,良好的合法性检查设计机制可以使程序更加清晰,产生bug更少,交互更加友好. What ? 合法性检查的目的在于确定边界.对于 ...
- 在android开发中使用multdex的方法-IT蓝豹为你整理
Android系统在安装应用时,往往需要优化Dex,而由于处理工具DexOpt对id数目的限制,导致其处理的数目不能超过65536个,因此在Android开发中,需要使用到MultiDex来解决这个问 ...
- 怎样实现了捕获应用中的日志在android开发中
怎样实现了捕获应用中的日志在android开发中,大家可研究一下. Process mLogcatProc = null; BufferedReader reader = null; try { mL ...
- Android开发中Eclispe相关问题及相应解决(持续更新)
1.Eclipse项目中的Android Private Libraries没有自动生成. 一般而言,在Android开发中,项目中引用到的jar包会放到项目目录中的libs中,引入库会放到Andro ...
- Android开发中的问题及相应解决(持续更新)
最近博客写的少了,以后还得经常更新才行. ------------------------------------------------------------ 1.特定业务需求下try cath ...
- 关于Android开发中的证书和密钥等问题
关于Android开发中的证书和密钥等问题 引言 除了Android发布应用签名时需要用到证书外,在进行google Map Api开发和Facebook SDK API开发等时都需要申请API Ke ...
- Android开发中Bundle用法包裹数据(转)
Android开发中Bundle用法包裹数据 Bundle的经典用法,包裹数据放入Intent中,目的在于传输数据. SDK 里是这样描述: A mapping from String values ...
随机推荐
- PHP学习记录数组中的数组的指针
unshift在数组头增加一个元素,push在数组尾增加一个元素,shift删除数组的第一个元素,pop删除数组的最后一个元素: <?php $item=array('苹果'); //在数组最前 ...
- JS基本动画
<style type="text/css"> .color_red { background: red; } div { position: absolute; to ...
- 关于sencha touch 用phonegap打包后,docked悬停的组件被手机软键盘遮挡的解决方法
这个问题应该算是phonegap的一个bug,在mainifest.xml 里android:windowSoftInputMode设置成了adjustpan,理论上不会出现遮挡悬停组件这种情况, 不 ...
- ubuntu下nginx编译安装
安装依赖库: sudo apt-get install libgd2-xpm sudo apt-get install libgd2-xpm-dev sudo apt-get install libg ...
- Autofac在项目中应用的体会,一个接口多个实现的情况
在本人接触的项目中Autofac应用的比较多一些,我理解的他的工作原理就是 注册类并映射到接口,通过注入后返回相应实例化的类! 下面说说我在项目中的实际应用 先来简单介绍下Autofac的使用 1. ...
- C#如何判断程序调用的exe已结束
二个方法:以运行系统记事本为例 方法一:这种方法会阻塞当前进程,直到运行的外部程序退出System.Diagnostics.Process exep = System.Diagnostics.Proc ...
- DES加密解密 Java中运用
DES全称Data Encryption Standard,是一种使用密匙加密的块算法.现在认为是一种不安全的加密算法,因为现在已经有用穷举法攻破DES密码的报道了.尽管如此,该加密算法还是运用非常普 ...
- 无法远程访问Mysql
1.故障状态 [root@server02 ~]# mysql -utuser -h192. -p Enter password: ERROR (HY000): Can't connect to My ...
- OC开发_Storyboard——Core Data
一 .NSManagedObjectContext 1.我们要想操作Core Data,首先需要一个NSManagedObjectContext2.那我们如何获得Context呢:创建一个UIMana ...
- Redis快速起步及Redis常用命令大全
本系列教程内容提要 Java工程师之Redis实战系列教程教程是一个学习教程,是关于Java工程师的Redis知识的实战系列教程,本系列教程均以解决特定问题为目标,使用Redis快速解决在实际生产中的 ...