自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 资源 (1)
  • 收藏
  • 关注

原创 为什么使用Fragment Arguments

最主要的原因是当系统重建fragment时,所有在类中声明的变量都会丢失。所以如果你使用方法一,当遇到用户改变系统配置或你的app后台后被系统回收而导致fragment重建,则content内容丢失。而在使用argument方法时,则内容不会丢失,在fragment重建后,通过getArguments可以找回。

2016-02-19 14:21:36 821

原创 Activity重建时保持Fragment状态的方法

Activity重建时保持Fragment状态的方法

2016-02-18 15:14:24 3001 1

原创 对onPause调用时机的误解

以前看到很多地方对Activity生命周期的pause状态定义为:Activity不在前台,但还是可见的。所以就以为如果在一个Activity中弹出一个Dialog,也会触发onPause方法。后来经试验发现这是错误的。

2016-02-18 13:29:59 2599

原创 Android命名趣事儿

版本命名 大版本单词的首字母都是以字母顺序命名的,每一个版本都对应个开发的API等级,目前从1.0的等级1,到6.0的23。 关于每个版本的详细信息可以参考: http://developer.android.com/reference/android/os/Build.VERSION_CODES.html兼容包命名如在Gradle中以maven形式加入兼容包依赖,你需要用以下代码:compi

2016-02-17 16:32:28 520

原创 startActivity流程小解

可能有些Android开发者认为startActivity是通过直接调用另一个Activity子类的方法来唤起另一个Activity的。其实不然。当你在使用startActivity时,这个调用会被发送给属于系统一部分的ActivityManager。由ActivityManager来创建改Activity实例并且调用它的onCreate方法。

2016-02-16 17:04:00 533

原创 记一个State Loss断言

可能很多朋友在使用v4兼容包中的Fragment方法进行应用开发时都遇到过这种异常,诈一看调用栈,根本无从下手解决。下面我就详细分析下这个断言出现的原因和解决方法。

2016-02-15 17:51:11 477

原创 Nexus OTA升级方法

OTA Update介绍 https://source.android.com/devices/tech/ota/Fastboot升级方法介绍和OTA下载地址 https://developers.google.com/android/nexus/images#instructions

2016-01-30 22:23:49 905

原创 类型系统

类型指一个编程语言中的数值、表达式、函数和模块等等属性内容。类型系统包括如何定义这些不同类型,如何操作这些类型,这些类型如何相互作用等方面内容。类型系统最主要的作用是通过检查每个值的类型和这些值得流动的规则来减少类型错误的发生。检查可以是静态的(at compile time), 也可以是动态的(at run time),或者是两者的结合。

2016-01-21 13:28:06 745

原创 Git修改文件权限方法

如何通过git修改remote库中的文件权限呢

2016-01-19 15:13:20 15188

原创 一个APK中包含多个dex方法

原因每个单独的dex(Dalvik Executable)文件中的方法id范围为[0, 0xffff]:65536,包括安卓系统框架,三方库和自己写得代码中的方法。所以如果你的工程很大,包含了超过65536的方法,那就需要用multiDex技术。Android 5.0之前和之后的解决方案在5.0之前所使用的Dalvik运行时默认的一个apk中只能包含一个dex文件。为了解决这个限制,我们可以使用mu

2016-01-19 13:45:48 7389

原创 ImageView中的ScaleType详解

官方介绍下面举个例子对以上几点属性逐条说明准备准备一张400x300的图片,命名为:test_400x300,写一个简单的布局,观察右边preview预览图的变化。 从图中我们可以看到,此控件的长宽布局都用in单位,之所以长宽都用in单位,是为了框定一个不受屏幕分辨率的区域。这样一张400x300px的图片放到不同的drawable目录下后,在屏幕上就会占用不同的英寸大小,此时scaleTyp

2015-12-30 01:38:40 825

原创 Android端实现Cookie机制

简介Sessions是服务端验证客户端身份的一种机制。而Cookies是客户端存储的一种身份凭证,是由服务端在回应的消息头中通过Set-Cookie字段“种”在客户端。以后每次客户端在向服务端请求时都会在消息头中带上Cookie字段。服务端就会根据这个Cookie的头来判断此次请求是从哪个用户发过来的,是否是一次有效请求等。请求www.baidu.com举例首次打开浏览器请求http://www.b

2015-12-16 15:27:18 5098

原创 详解Android源码目录

首先推荐大家一个很好的,而且没有被墙的android源码查询网站:http://androidxref.com/大家可以直接在上面查看源码,而且里面的查询也很方便。如果是第一次查看源码肯定会被里面的目录名整迷糊了,不知道要在哪个目录下查到自己想要的代码。我这边给大家详细介绍下:Bionic - Google自己开发的安卓C运行库。 在这个文件夹下你可以找到c库的

2015-11-10 17:38:55 777

原创 ListView优化为何ViewHolder用static类

如果有人还不了解ViewHolder为什么可以起到优化作用,我这边再做下简单说明:Android的findViewById动作是比较耗时的,需要遍历布局的树形结构,才能找到相应的视图。所以如果想在这一块进行优化,我们就需要把find过后的内容进行缓存,所以就用ViewHolder的方法。这个方法很容易理解,但是可能有些人还是比较较真,就像我,这样可以起到缓存作用,那为什么内部类

2015-11-09 16:38:13 725

原创 Android布局中的尺寸单位介绍

简介:很多刚开始接触Android开发的初学者,虽然会做些简单布局,但是却不明白其深层的意思,只是把布局文件写完了,在真机上调试看到样子就觉得完事了。也不会管这种布局方式是否在其他屏幕手机上合适。这篇文章先从一个最基本的小点入手,主要介绍下Android工程目录下的mdpi、hdpi等目录的意义,和它们与开发中所用到的一些基本单位如sp、dp等的关系。在介绍开发上的知识之前我们先了

2015-11-09 14:42:24 1289

原创 Android无法安装包问题

解析包问题:1,系统版本过低,应用设置的minSdkVersion高于所装手机的版本;应用未安装1,包名中有大写字母;导入的包也都应该是小写的包名,否则可能会导致一些机型出现应用未安装的问题;

2015-09-07 14:15:24 677

原创 从Installer直接打开应用程序会出现Android系统bug

问题现象:用Android系统自带的Installer安装完应用后,会有以下两个不同表现:1,用户直接在installer界面打开应用。然后按home键后台运行,此时如果再点击该应用的launcher图标或者快捷方式进入,会发现该应用又会从该应用第一个页面重新开始启动。2,用户在installer界面安装完后,直接点击完成,然后找到launcher图标点击启动应用。此时按home键后台

2014-12-16 12:45:29 1852 3

转载 android中四大引用的区别,强引用、软引用、弱引用和虚引用

强引用:使用的内容不可被回收,直到出现out of memory错误,android中没有任何关键字指定这种强引用。软引用:        如果一个对象只具有软引用,那么如果内存空间足够,垃圾回收器就不会回收它;如果内存空间不足了,就会回收这些对象的内存。只要垃圾回收器没有回收它,该对象就可以被程序使用。软引用可用来实现内存敏感的高速缓存。软引用可以和一个引用队列(ReferenceQue

2013-06-15 12:09:04 2423

转载 关于strcpy、memset、memcpy的使用详解

这次在工作上分别遇到过strcpy、memset、memcpy,也在网络上看到过一些关于三者区别的文章,罗列大概内容如下: strcpy()来自C语言,在C++里得以保留。首先,要指明的是,C++里strcpy()里接受的参数是C-串,并非string,更不可 能是其他类型的数据。它表示一个字串的内容拷贝到另一个字串。拷贝会在源字串里第一个'/0'时停止拷贝. strcpy(目标字串,源字串)

2012-09-22 16:13:42 904

转载 cerr与cout的主要区别

cerr与cout的主要区分就是,cout输出的信息可以重定向,而cerr只能输出到标准输出(显示器)上。   例如下面程序编译后生成test.exe// test.cpp#include int main(){   cout << "hello world---cout" << endl ;   cerr << "hello world---cerr" << endl ;   re

2012-09-21 13:27:45 856

转载 存储过程

存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。优点  1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般SQL语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。  2.当对数

2012-09-20 08:19:18 410

转载 线程中Sleep(0)的作用

Sleep(n)的作用是让当前线程睡眠n毫秒,以便执行其他线程,如果没有其他线程,那睡眠n毫秒后,继续执行。而如果n=0,Sleep(0)是指CPU交出当前线程的执行权,让CPU去执行其他线程。也就是放弃当前线程的时间片,转而执行其他线程。那么,Sleep(0)应该在那种情况下使用? 一般来说,如果当前线程比较耗时比较占CPU资源,可以在结尾处加上Sleep(0), 这样效率会得到

2012-09-20 08:04:59 1511

原创 从源代码安装软件

1,提取文件tar [options] argument选项  x--标识一个需要提取的压缩文件  v--触发verbose模式,列出提取的每一个文件  z--解压gzip格式的文件  j--解压bizp2格式的文件  f--定义打包压缩的文件是哪个(必须项)2,执行 ./configure    生成Makefile文件;   configure

2012-09-12 19:17:20 577

翻译 几种段错误(segmentation fault) 实例

1,int main(void) { char *s = "hello world"; *s = 'H'; }  被装载时,系统把“hello world” 连同其它的字符串和const型数据放入到内存的只读区。执行时,一个变量s被设为指向该字符串的位置,当再试图向该位置写时,就会产生段错误。2,   int *ptr = NULL;

2012-09-10 18:15:24 1384

原创 mount的使用方法

第一次成功使用mount,因为现在的Linux都是自动挂载同台计算机上的其他分区的,虽然学过mount这个指令,但一直没机会用它,不过最近不知出了什么问题,win7下的分区不能在Linux下显示了,经过一番网上资料查找后,总结了一下方法,同时这些也学到了很多新的知识。步骤如下:1, # sudo mkdir -p /media/c 注: 该命令用根权限在根目录下的media文件

2012-09-09 14:20:50 626

新GRE AW倒计时练习

很不错的一款网页版AW练习工具,里面包括新G的所有AW题型,并且都已经归纳好了!!

2011-10-22

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除