- 博客(23)
- 收藏
- 关注
原创 Build variants 的使用
使用 Android Studio 中的 Build variants (productFlavors)Android Studio 真的是越玩越好玩~在上一篇 [從 Eclipse 轉換到 Android Studio ] 裡面開始研究了一些 build.gradle 裡面的基本功能,像是設定、修改 default config 等。但是有時候常常在實務開發上
2017-09-08 10:21:14
1210
原创 OrmLite数据库
一:升级概述Android开发涉及到的数据库采用的是轻量级的SQLite3,一搬会选择第三方,而这里我选择ORMLite数据库,在开发中数据库表的设计往往不是一开始就非常完美,可能在应用版本开发迭代中,表的结构也需要调整,最常见的就是修改表里的字段(新增字段),那么在版本升级的时候往往要保留用户之前的数据,这时候就涉及到数据库升级的问题了。数据库升级数据库升级,主要有以
2017-06-16 15:36:05
593
原创 Android 开发中的空指针
概述: 在实际编码中总是会遇到 空指针异常 ,本文总结了一些处理空指针的个人经验。原则:尽早的检查,尽早的失败。比如: 通过intent传参到新的目标 activity,而且一定需要这个参数,那么在新的目标activity中 onCreate方法中 判断中这个参数,如果null,直接抛出空指针异常让程序崩溃。取代在使用该参数时进行检查,这样能更早的发现问题。或者在 一个普通的
2017-06-06 09:49:14
989
转载 Acache源码分析
【Android开源项目分析】android轻量级开源缓存框架——ASimpleCache(ACache)源码分析ASimpleCache框架源码链接https://github.com/yangfuhai/ASimpleCache 杨神作品,大家最熟悉他的应该是afinal框架吧官方介绍ASimpleCache 是一个为Andr
2017-05-31 17:11:31
432
翻译 自定义view中绘制文本居中解决方案
在自定义View中,会经常遇到canvas.drawText这个方法,很多新手都不明白这个方法参数的含义,经过我不断的Google和多次的测试,把我的经验写出来供大家参考,错误之处,欢迎大家给我留言,一起讨论。 首先,我们看下这个方法参数的含义:canvas.drawText(text, x, y, paint),第一个参数是我们需要绘制的文本,第四个参数是我们的画笔,这两个不用
2017-05-16 10:44:07
507
转载 Android studio 中的单元测试
Android Studio 2.0 创建的工程,会生成两个默认的测试目录:test和androidTest,其中,test目录为在本机执行单元测试代码的目录,androidTest为在Android设备上执行单元测试代码的目录。mian目录下为项目代码,androidTest目录下为编写Android测试用例使用,test目录下未编写Java测试用例使用。如下图对于新建的工程
2017-05-10 16:02:39
612
翻译 Adroid自定义柱形图,条形图和饼状图
最近由于项目需要,研究了一些统计图的做法,开始时,看了很多博文,大部分都是引用第三方的库,虽然简单,易上手,但是功能太死板,有很多要求都是不能满足的,所以经过研究,自己使用View中的canvas重新绘图制作统计图。首先上几张的效果图吧。点击这里下载(0分下载)一、demo的结构一个activity
2017-05-01 11:04:48
639
原创 android中获取各种目录
1.context.getCacheDir(): //返回通过Context.openFileOutput()创建和存储的文件系统的绝对路径,应用程序文件,这些文件会在程序被卸载的时候全部删掉。/data/data/com.example.qymh/cache2.context.getFilesDir(): //返回应用程序指定的缓存目录,这些文件在设备内存不足时会优先被
2017-04-28 18:56:22
1083
原创 android studio2.3闪退问题
app在部分手机上(低版本)打不开或打开就闪退的问题:问题描述1.之前做过一个环信的即时通讯,集成好环信的sdk之后在4.x的手机上就打开就闪退,,只能在5.x和6.x手机上打开app2.最近又碰到了同样的问题不过这次和上次不一样,这次是因为我的 as升级到了 2.3 之后出现的这个问题..所以经过了两次遇到这个问题今天决定记录一下.这个问题的处理方法分三部:1.把Andr
2017-04-19 23:04:35
1659
转载 Gradle 升级
在没有梯子的情况下,想让Studio自动更新Gradle是比较慢的(可以说是非常慢)。这边教大家一个不用梯子的更新法。step1打开一个项目,在Studio中选择Project的视图,找到目录gradle\wrapper\gradle-wrapper.properties这个文件。打开可以看到以下内容目录gradle-wrapper.prop
2017-03-20 14:10:25
651
原创 提交文件到svn
如何将指定文件或文件夹直接提交到svn指定目录? 一般我们都是按以下步骤操作的:1.先将那个目录checkout下来2.将要添加的文件或者文件夹放到这个目录中3.右击文件执行svn菜单中的add命令4.右击文件执行svn菜单中的commit命令上面的步骤3和4可以合并成一步完成,即右击整个svn文件夹然后选择commit命令,对话框会显示哪些文件需要添加
2017-03-15 14:55:43
4491
原创 Edittext小记
1.获取光标位置[java] view plain copyint index = editText.getSelectionStart(); 2.在光标处插入字符[java] view plain copyint index = editText.getSelectionStart();
2017-03-07 17:45:50
232
转载 ListView中含有EditText抢占焦点问题终极解决方案
最近做项目的时候遇到了一个问题,就是在ListView的item上面含有一个EditText,要求是这样: 1当点击item的时候,item可以点击; 2当点击EditText的时候EditText也可以正常弹出软件盘; 当时真是把我给搞疯了,item可以点击的时候,EditText不能正常使用了,EditText好了的时候,item又不可点击了,当时那个火,心中一万句草泥马都出来了!
2017-03-03 17:19:38
346
转载 解决Error:Android Dex: com.android.dex.DexIndexOverflowException: Cannot merge new index 65918 into a
错误:Error:Android Dex: com.Android.dex.DexIndexOverflowException: Cannot merge new index 65918 into a non-jumbo instruction!如下图:直接原因是Java代码太多,jar包太多。谷歌官方文档已经有解决方案:http://developer.a
2017-02-21 20:46:54
334
转载 Fragment 出栈的方法popBackStack需要特别注意的一点
void popBackStack()弹出堆栈中的一个并且显示,类似按下返回键的操作;popBackStack(String tag,int flags)tag可以为null或者相对应的tag,flags只有0和1(POP_BACK_STACK_INCLUSIVE)两种情况如果tag为null,flags为0时,弹出回退栈中最上层的那个fragmen
2017-02-21 15:51:35
1129
原创 android studio识别不了genymotion 模拟器问题解决
安装好了genymotion后,再在genymotion官网下载了eclipse连接genymotion插件后,遇到了eclipse安装应用程序到genymotion模拟器报出adb不能正常运行的错误。在经历了重启eclipse和重启电脑后还是解决不了,上网查询答案,终于话费了半天的时间找到解决方法了。答案详见@宇宙神帝的http://blog.youkuaiyun.com/sbvfhp/
2017-01-26 17:42:41
5337
原创 Android studio 中 Gradle 相关知识
1. 前言在使用android studio 过程中,经常会因为gradle编译版本问题而导致编译失败,最常见的提示如:Gradle version 2.X is required. Current version is 2.X. If using the gradle wrapper, try editing the distributionUrl in为了解决这个问
2017-01-24 09:41:38
505
翻译 Android,setTextColor等背景选择器设置失败问题,及多种设置方法
最近使用背景选择器设置CheckBox,等一些控件时,背景选择器失效,可以使用以下2种方法,一般都能解决。准备:在res->color文件夹下创建一个颜色的背景选择器,命名为:text_black2white,黑到白的变化。selector xmlns:android="http://schemas.android.com/apk/res/android"> item and
2017-01-23 15:34:35
346
转载 在app的gradle中添加不审核图片类型
今天在使用Android Studio创建一个新的项目时,遇到一个问题。在导入了大量的图片到图片目录中后(全部是.png格式的),因为这些图片都不是我制作的我并不知道哪些图片的格式是被改过的,所以在Run项目的时候麻烦的Gradle出来闹事了,它报了一个错:看左边意思大概是说一个“XX文件处理失败”,但是他没说是哪个文件处理失败,纠结!纠结半天后打开右边的Gra
2016-12-21 01:38:53
417
转载 AS导入一个Eclipse项目出错解决办法
3、导入项目时报错。There are unrecoverable errors which must be corrected first打开Eclipse的项目找到project.properties右键,用记事本打开它删除android.library.reference.1=../android-support-v7-appcompat然
2016-12-21 00:25:08
1373
转载 如何写出格式良好的博客
笔者最近很喜欢在csdn发一些技术博客,可是看了别人的博客,有代码的地方总是可以显示出代码块,而自己贴上去的代码总是没有。刚开始还以为优快云博客里面的编辑功能有,可是找来找去都没有找到。后来才发现原来需要自己在源码上进行修改的,现在显示成功了,将这种经验与大家分享。如何将自己的代码贴上去显示这种效果?方法很简单:【1】、将优快云的博客
2016-12-02 22:59:56
232
原创 Asyntask源码分析
AsynTask6.0源码分析:Asyntask 是一个抽象类,如果要使用需要继承他构造方法:public AsyncTask() { mWorker = new WorkerRunnable() { public Result call() throws Exception { mTaskInvoked.set(tr
2016-12-02 22:48:23
264
原创 anroid中意图1
显示意图:明确要打开的页面//打开自己应用中的activiy几种写法写法1://显示意图打开别的应用intent.setClassName("com.huawei.im","com.huawei.im.MainActivity");这个既可以打开自己应用中的activity也可打开别的注册应用的activity写法2: intent.setClassName(this
2016-11-30 14:07:48
256
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人