0
点赞
收藏
分享

微信扫一扫

发布RichCommon1.2.4


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

  1. 支持泛型
  2. Code量较少
  3. 不用关心MVP之间的流程

— 基于 Activity

  1. 继承IBaseView, 编写View层显示接口

public interface AddView extends IBaseView {
    void showAdd(String sum);
}

  1. 继承BaseMvpActivity, 实现VIew层接口

类头:
AddActivity extends BaseMvpActivity

@Override
    public void showAdd(String sum) {
        result.setText(sum);
    }

  1. 继承 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

  1. 继承IBaseView, 编写View层显示接口
  2. 继承BaseMvpFragment, 实现VIew层接口
  3. 继承 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.AdapterRvCommonAdapter

@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.AdapterRvViewHolder

与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();


举报

相关推荐

0 条评论