【问题标题】:RecyclerView change layout for edit item and update data after edditRecyclerView 更改编辑项的布局并在编辑后更新数据
【发布时间】:2017-11-29 08:45:49
【问题描述】:
我有带有项目的 RecyclerView。我的项目如下所示(1):
当我点击项目时,我需要一个像 2 或 3 这样的项目。
如果像 2 - 我确实需要为每次更改更新数据库中的数据 -+ 或添加“应用”按钮
我怎样才能使这个逻辑?我不想使用库并使 bu 默认的 android 工具。但如果你觉得很难,你建议图书馆
【问题讨论】:
标签:
android
android-layout
android-recyclerview
【解决方案1】:
您可以在recycleview 中管理多个视图类型。检查示例代码以供参考。
public class MyAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
class ViewHolder0 extends RecyclerView.ViewHolder {
...
public ViewHolder0(View itemView){
...
}
}
class ViewHolder2 extends RecyclerView.ViewHolder {
...
public ViewHolder2(View itemView){
...
}
@Override
public int getItemViewType(int position) {
// Just as an example, return 0 or 2 depending on position
// Note that unlike in ListView adapters, types don't have to be contiguous
return position % 2 * 2;
}
@Override
public RecyclerView.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
switch (viewType) {
case 0: return new ViewHolder0(...);
case 2: return new ViewHolder2(...);
...
}
}
@Override
public void onBindViewHolder(final RecyclerView.ViewHolder holder, final int position) {
switch (holder.getItemViewType()) {
case 0:
ViewHolder0 viewHolder0 = (ViewHolder0)holder;
...
break;
case 2:
ViewHolder2 viewHolder2 = (ViewHolder2)holder;
...
break;
}
}
}