去除重复库的引入
compile ('com.sothree.slidinguppanel:library:2.0.4'){
exclude module: 'support-v4'
}
去除依赖库中的引入
compile (project(':a')){
exclude module: 'b'
exclude module: 'c'
}
去除 module a中关于b、c的引入,而使用当前project的依赖
Fresco图片设置
在使用Fresco进行图片设置的时候,使用DraweeView设置图片的时候,需要谨慎使用setImage的方法。(在Fresco 0.8.1版本的使用,DraweeView还是直接继承自ImageView) ,这样在调用的时候,若是图片过大,则会出现OOM的问题。
/**
* Use this method only when using this class as an ordinary ImageView.
* @deprecated Use {@link #setController(DraweeController)} instead.
*/
@Override
@Deprecated
public void setImageDrawable(Drawable drawable) {
init(getContext());
mDraweeHolder.setController(null);
super.setImageDrawable(drawable);
}
/**
* Use this method only when using this class as an ordinary ImageView.
* @deprecated Use {@link #setController(DraweeController)} instead.
*/
@Override
@Deprecated
public void setImageBitmap(Bitmap bm) {
init(getContext());
mDraweeHolder.setController(null);
super.setImageBitmap(bm);
}
/**
* Use this method only when using this class as an ordinary ImageView.
* @deprecated Use {@link #setController(DraweeController)} instead.
*/
@Override
@Deprecated
public void setImageResource(int resId) {
init(getContext());
mDraweeHolder.setController(null);
super.setImageResource(resId);
}
/**
* Use this method only when using this class as an ordinary ImageView.
* @deprecated Use {@link #setController(DraweeController)} instead.
*/
@Override
@Deprecated
public void setImageURI(Uri uri) {
init(getContext());
mDraweeHolder.setController(null);
super.setImageURI(uri);
}
从代码中给出的注释来看,这几个方法已被废弃。正确的姿势应该使用setController方法来设置图片。
获取View的bitmap
view.setDrawingCacheEnabled(true);
view.buildDrawingCache();
Bitmap bitmap = Bitmap.createBitmap(v.getDrawingCache());
view.setDrawingCacheEnabled(false);
layout preview 显示
Android每次编译运行是件耗时的事情,所以这里使用layout preview有个正确的姿势可以注意一下。
tools:text=”Linenumber”
tools:drawableLeft=”@mipmap/ic_launcher”
在xml布局中,使用TextView的时候,可以使用以上属性。使用这些属性,只会在layout preview中会生效,在运行时则会被忽略。
另外感觉一个非常有用的属性就是
tools:listitem=”@layout/row_person”
这样,在listview或者recyclerView中,就可以顺带看到我们ItemView的效果了。
Textview 去除文本间距
android:includeFontPadding="false"
git ignore失效的问题
Cannot ignore .idea/workspace.xml - keeps popping up
项目直接使用 aar
repositories {
flatDir {
dirs 'libs'
}
}
dependencies {
compile(name:'cards', ext:'aar')
}
List转换为数组
Foo[] array = new Foo[list.size()];
list.toArray(array);