MVC/MVP/MVVM
DataBinding##
//www.greatytc.com/p/749c4531d108
Fragment##
Fragment主要是一个场景
CardView
public class CardView extends FrameLayout implements CardViewDelegate
是一个Layout, 为了方便使用,做了一些优化
interface CardViewDelegate {
void setBackgroundDrawable(Drawable paramDrawable);
Drawable getBackground();
boolean getUseCompatPadding();
boolean getPreventCornerOverlap();
float getRadius();
void setShadowPadding(int left, int top, int right, int bottom);
}
适配器(数据 <--> UI)##
所有的适配器都是用来处理 (UI 和数据 同步&展示的),
适配器被使用一般两个前提条件:
1、同时显示多个相同数据结构的控件(List/Gride/RecyclerView ...)
2、从数据获取/解析/展示 到 UI的显示 过程非常复杂
其余的基本上就是简单的控件了,例如:Button\Textview\ImageView等
动画##
互交操作的动画就是交给动画处理了,先个基础科普:
ViewAnimator###
https://github.com/Skykai521/ViewAnimator
ViewSwitcher
ViewFlipper
TextSwither
ImageSwitcher
extend ViewAnimator extend Framelayout
感觉是用于展示的一个有多个控件组成的Framelayout,在显示和切换的时候定义的一些动画。
网络##
还是用控件吧,OKhtttp已经是标配了
数据库##
还是控件吧,GreenDon