触手app新版已经改版了,大家请下载2.2.3.7424:
触手app主页效果图:
看下实现出来的效果图吧:
设置Manager:
RecyclerView chuShouView = (RecyclerView) findViewById(R.id.chushou_view);
chuShouView.setLayoutManager(new ChuShouManager());
设置触摸辅助类ChuShouCallBack:
ItemTouchHelper.Callback callback = new ChuShouCallBack(adapter, maps, ItemTouchHelper.UP | ItemTouchHelper.DOWN);
ItemTouchHelper itemTouchHelper = new ItemTouchHelper(callback);
itemTouchHelper.attachToRecyclerView(chuShouView);
图一设置Adapter:
chuShouView.setAdapter(adapter = new ChuShouAdapter(this, maps));
图二设置Adapter:
chuShouView.setAdapter(adapter = new ChuShouScrollAdapter(this, items));
图三设置Adapter:
chuShouView.setAdapter(chuShouGridAdapter = new ChuShouGridAdapter(this, gridItems));
这里面的流式布局的Adapter和多种样式的Adapter有一个共同点,它们的item都是带有滑动结构的,因此这里我把它们的结构当成RecyclerView+RecyclerView来处理了,而上面的图片式结构就是RecyclerView+ImageView来处理了,大家可以着重看看ChuShouScrollAdapter和ChuShouGridAdapter代码:
ChuShouGridAdapter的onCreateViewHolder方法:
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
return new MyHolder<ChuShouGridActivity.GridItem>(View.inflate(context, R.layout.scroll_item_layout, null), context) {
@Override
protected RecyclerView.Adapter<RecyclerView.ViewHolder> getAdapter(List<ChuShouGridActivity.GridItem> list, Context context) {
return new ChuShouGridItemAdapter(list, context);
}
@Override
protected RecyclerView.LayoutManager getLayoutManager(Context context, RecyclerView.Adapter<RecyclerView.ViewHolder> adapter) {
return new ChuShouGridLayoutManager(context, adapter);
}
};
}
ChuShouScrollAdapter的onCreateViewHolder方法:
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
return new MyHolder<ChuShouScrollActivity.ShowItem>(View.inflate(context, R.layout.scroll_item_layout, null), context) {
@Override
protected RecyclerView.Adapter<RecyclerView.ViewHolder> getAdapter(List<ChuShouScrollActivity.ShowItem> list, Context context) {
return new FlowAdapter(list, context);
}
@Override
protected RecyclerView.LayoutManager getLayoutManager(Context context, RecyclerView.Adapter<RecyclerView.ViewHolder> adapter) {
return new MyFlowLayoutManager();
}
};
}
这里流式布局,用到我的另外一个库LayoutManager-FlowLayout
R.layout.scroll_item_layout代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#cccccc"
android:orientation="vertical">
<com.library.chushou.view.SlideRecyclerView
android:id="@+id/container"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
滑动控件还会有ListView
、ScrollView
等
欢迎客官到本店光临:184793647
(qq群)
v1.3版本: 修复触摸问题
allprojects {
repositories {
...
maven { url 'https://jitpack.io' }
}
}
dependencies {
...
compile 'com.github.1002326270xc:ChuShouView-master:v1.3'
...
}
email: [email protected]
csdn:enter
简书:enter