Android

Android-[转载]渗透理解Animation时间插值Interpolator类

一个好的动画一定是用心做出来的,何为用心?其中一点我认为定义适当的 Interpolator 就是一种用心的表现;这点在 google material design 中尤为明显。
一个好的动画一定要符合实际,一句老的话就是:石头下落一定要受重力才优雅,不然一颗石头像羽毛一样在风中还飘啊飘的那就不行了。

Android-[转载]TypedValue.applyDimension中dp和sp之间转化的真相

转载自:http://www.cnblogs.com/xilinch/p/4444833.html

最近在看了许多关于dp-px,px-dp,sp-px,px-sp之间转化的博文,过去我比较常用的方式是:

1
2
3
4
5
6
7
8
9
10
11
//转换dip为px 
public static int convertDipOrPx(Context context, int dip) {
float scale = context.getResources().getDisplayMetrics().density;
return (int)(dip*scale + 0.5f*(dip>=0?1:-1));
}

//转换px为dip
public static int convertPxOrDip(Context context, int px) {
float scale = context.getResources().getDisplayMetrics().density;
return (int)(px/scale + 0.5f*(px>=0?1:-1));
}

Android-常用第三方库proguard-rules配置

本文内容均是本人在开发过程中整理的:

butterknife

1
2
3
4
5
6
7
8
9
-keep class butterknife.** { *; }
-dontwarn butterknife.internal.**
-keep class **$$ViewInjector { *; }
-keepclasseswithmembernames class * {
@butterknife.* <fields>;

}
-keepclasseswithmembernames class * {
@butterknife.* <methods>;

}

Android-Exception整理之Multiple dex files define

问题描述:

手动编译Android工程时出现异常如下:

1
2
UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexException: Multiple dex files define Lcom/xxx/xxx/xxx

这个问题出现的原因是类的重复定义,即包的重复引用,意思就是项目的引用的某个包,而被作为library的项目也引用了同一个包。

Android-[转载]shape与selector实现圆角

shape和selector是Android UI设计中经常用到的,比如我们要自定义一个圆角Button,点击Button有些效果的变化,就要用到shape和selector。可以这样说,shape和selector在美化控件中的作用是至关重要的。
1.Shape
简介
作用:XML中定义的几何形状
位置:res/drawable/文件的名称.xml