RichCommon是一个基于android的基础框架库;其中包括基础Activity、Fragment、Adapter类,MVP基础框架,工具Util类,水印view, 可循环回收Imageview等View。
Usage
For Gradle
dependencies {
......
compile 'cn.jarlen.maven:richcommon:1.2.4'
......
}
Using SNAPSHOT
add this to repositories section in build.gradle
repositories {
maven { url 'https://raw.githubusercontent.com/jarlen/maven-repo/master/' }
jcenter()
}
AND
dependencies {
......
compile 'cn.jarlen.maven:richcommon:1.2.4'
......
}
ChangeLogs
发布 richcommon1.2.4 2016-12-13
RvCommonAdapter的扩展,支持多类型ItemView的列表
public int getLayoutResId(int viewType) {
switch (viewType) {
case 0:
return R.layout.layout_rv_item_one;
case 1:
return R.layout.layout_rv_item_two;
case 2:
return R.layout.layout_rv_item_three;
case 3:
return R.layout.layout_rv_item_four;
default:
return R.layout.layout_rv_item_one;
}
}
CommonAdapter的扩展,支持多类型ItemView的列表
public int getLayoutResId(int position) {
return R.layout.layout_list_item;
}
实现MVP基础架构
View : 基于activity、fragment
- 支持泛型
- Code量较少
- 不用关心MVP之间的流程
— 基于 Activity
- 继承IBaseView, 编写View层显示接口
public interface AddView extends IBaseView {
void showAdd(String sum);
}
- 继承BaseMvpActivity, 实现VIew层接口
类头:
AddActivity extends BaseMvpActivity
@Override
public void showAdd(String sum) {
result.setText(sum);
}
- 继承 BaseActivityPresenter,实现业务层逻辑
public class AddPresenter extends BaseActivityPresenter<AddView> {
public void add(String a, String b) {
int sum = Integer.valueOf(a) + Integer.valueOf(b);
getView().showAdd("" + sum);
}
}
— 基于 Fragment
- 继承IBaseView, 编写View层显示接口
- 继承BaseMvpFragment, 实现VIew层接口
- 继承 BaseFragmentPresenter,实现业务层逻辑
发布 richcommon1.2.3 2016-11-15
进一步优化可复用的Adapter
1.支持泛型
2.Code量更少
- 基于ListView的Adapter的CommonAdapter
commonAdapter = new CommonAdapter<String>(this) {
@Override
public void onBindView(ViewHolder viewHolder, String item) {
TextView tv = viewHolder.getView(R.id.tv);
tv.setText(item);
}
@Override
public int getLayoutResId() {
return R.layout.layout_list_item;
}
};
mListView.setAdapter(commonAdapter);
- 基于RecycleView.Adapter的RvCommonAdapter
@Override
public void onBindView(RvViewHolder viewHolder, String item) {
ImageView image = viewHolder.getView(R.id.iv_image);
Bitmap bitmap = ImageUtils.getBitmapByPath(item);
image.setImageBitmap(bitmap);
}
基于RecycleView.Adapter的RvViewHolder
与ViewHolder相似
发布 richcommon1.2.2 2016-8-30
- 添加水印view、可循环回收的Imageview
一、包:Adapter
1、extends SimpleBaseAdapter 实现getView();
- 支持泛型
- 代码量少
- 可结合ViewHolder使用
2、ViewHolder 超级复用(getView)
- 可复用
- 代码量少
- 与Adapter相结合
ViewHolder viewholder = ViewHolder.getViewHolder(Context context, ViewGroup parent,View convertView, int position, int layoutId);
TextView tv = viewholder.getView(resId);
return viewholder.getConvertView();