- 浏览: 29015 次
- 性别:
- 来自: 北京
最新评论
文章列表
100% — FF
95% — F2
90% — E6
85% — D9
80% — CC
75% — BF
70% — B3
65% — A6
60% — 99
55% — 8C
50% — 80
45% — 73
40% — 66
35% — 59
30% — 4D
25% — 40
20% — 33
15% — 26
10% — 1A
5% — 0D
0% — 00
格式如#00FFFFFF,前两位代表不透明度的十六进制。00表示完全透明,FF就是全不透明。依次递增。
图片处理:Fresco facebook推出的
网络通信:Okhttp
JSON解析:jackson
Animation知名开源库:NineOldAndroids
底层工具类:bolts Parse发布
随着版本的更迭,应用程序编程接口(API)等级不断发生。下面将目前为止所有API等级罗列出来,并与Android各版本一一对应。
API等级1:Android 1.0
API等级2:Android 1.1 Petit Four
API等级3:Android 1.5 Cupcake
API等级4:Android 1.6 Donut
API等级5:Android 2.0 éclair
API等级6:Android 2.0.1 éclair
API等级7:Android 2.1 éclair
API等级8:Android 2.2 - 2.2.3 Froyo
API等级9:Androi ...
public class Test {
public static void main(String[] args) {
BigInteger in = new BigInteger(String.valueOf(3));
BigInteger i = factorial(in);
System.out.println(i);
}
private static BigInteger factorial(BigInteger i) {
BigInteger value = new BigInteger("0");
BigInteger value1 ...
这是个需要细心处理的坑.
1 内存:
在manifest中可以对各个组件声明其所在的进程:
android:process=":name"
然后对应的Acitivity, Receiver, Service就会运行在相应的进程中.
但是有些类会在所有进程中运行, 比如一些Utils工具类, 比如Application类.
当遇到多个进程并行的时候, 厘清进程所对应的代码, 避免在进程A里跑了进程B的代码.
比如有一个工具类Utils_procA. 只需要在进程A中工作, 那对于进程B来说, 这个Utils_procA就没有作用, 是冗余的代码, 如果在B中 ...
Android4.2 以前WebView 提供了javascript 调用Java代码的方法,会造成很大的安全漏洞。Android官方在API17后,限制javascript代码只能调用声明了@JavascriptInterface 注解的Java方法。
所以你必须要给每个可供js代码调用的Java方法加一个@JavascriptInterface接口。
@Override
public void setUserVisibleHint(boolean isVisibleToUser) {
DLog.i("tag", "myinfo setUserVisibleHint");
super.setUserVisibleHint(isVisibleToUser);
if (isVisibleToUser){
//相当于onResume();
}else{
//相当于onPause();
}
}
这个参数为true时,说明这个Fragment已经在你的眼前了,这时你再去加载你需 ...
// 通过包名获取要跳转的app,创建intent对象
Intent intent = getPackageManager().getLaunchIntentForPackage("com.example.xxx");
// 这里如果intent为空,就说名没有安装要跳转的应用嘛
if (intent != null) {
// 这里跟Activity传递参数一样的嘛,不要担心怎么传递参数,还有接收参数也是跟Activity和Activity传参数一样
intent.putExtra("name", "Liu xiang" ...
如何修改状态栏的色值
- 博客分类:
- android
原文地址:http://blog.csdn.net/baiyuliang2013/article/details/46674735
http://www.2cto.com/kf/201501/374049.html
private boolean isTopActivity(String packageName) {
System.out.println("**********************top packageName:"
+ packageName);
ActivityManager activityManager = (ActivityManager) this
.getSystemService(Context.ACTIVITY_SERVICE);
List<RunningTaskInfo> tasksInf ...
1.减少对象的创建
2.调用一个接口的引用会比调用实体类的引用多花费一倍的时间
3.如果你不需要访问一个对象的成员变量,那么请把方法声明成static。虚方法执行的更快
4.不用getter和setter
在Android开发中常用到线性布局LinearLayout对界面进行具体的创建,其中android:layout_weight这个属性很重要,它可以按照程序员的控制,根据终端屏幕的大小,以相应的比例显示控件的大小,而不会把控件的大小写死,造成无法根据屏幕来自动调整控件本身的大小。
一、LinearLayout内的控件的layout_width设置为"wrap_content"
删除stuido项目
- 博客分类:
- studio
File->Project Strcture 里面的Modules选中想要删除的项目点击上部的减号按钮
Android开源控件
- 博客分类:
- android
http://www.jianshu.com/p/cb705d582859#
https://github.com/Trinea/android-open-project
Android开发中消耗内存较多一般都是在图像上面
加载图像有三种途径
1.从网络加载
2.从文件读取
3.从资源文件加载
针对这三种情况我们一般使用BitmapFactory的:decodeStream,
decodeFile,decodeResource,这三个函数来获取到bitmap然后再调用ImageView的setImageBitmap函数进行展现。
我们的内存去哪里了(为什么被消耗了这么多):
其实我们的内存就是去bitmap里了,BitmapFactory的每个decode函数都会生成一个bitmap对象,用于存放解码后的图像,然后返回该引用。如果图像数据较大就会造 ...