我有一个有两列的交错网格.这很有效.我想要的是位置0,行跨越2列.我之前很容易使用GridLayoutManger这样做:
mGridLayoutManager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
@Override
public int getSpanSize(int position) {
return position == 0 ? 2 : 1;
}
});
Run Code Online (Sandbox Code Playgroud)
StaggeredGridLayoutManager没有像GridLayoutManager那样为我提供这个功能.
有没有不同的方式这样做?我已经搜索但没有找到任何有相同问题的人,这是令人惊讶的,因为我认为这个功能对于我的场景和无限滚动非常有用,当ProgressBar显示在RecyclerView的最后一行时.
android android-support-library staggeredgridlayout android-recyclerview
我试图使用TwoWayView库创建一个spannable recyclerView,如下图所示:https://github.com/lucasr/twoway-view
但是我无法获得所需的视图,并且遗漏了空单元格.
final SpannableGridLayoutManager.LayoutParams lp = (SpannableGridLayoutManager.LayoutParams) itemView.getLayoutParams();
//final int span1 = (itemId == 0 || itemId == 3 ? 2 : 1);
//final int span2 = (itemId == 0 ? 2 : (itemId == 3 ? 3 : 1));
int span1 = 0; //h
int span2 = 0; //w
switch(itemId)
{
case 0:
span1 = 2;
span2 = 1;
break;
case 1:
span1 = 2;
span2 = 1;
break;
case 2:
span1 = 2;
span2 …Run Code Online (Sandbox Code Playgroud) 我如何使用一些跨越列的单元格的GridView?我有几组需要动态加载的数据(所以网格布局不是我需要的),并在GridView上以不同的方式直观呈现.下面是我能够实现的图形表示,'x'显示显示某些内容的单元格,而空单元格没有显示任何内容
不需要http://oi50.tinypic.com/25pq13p.jpg
有了我在这里,当我想在一行中显示4个项目时,中心有一个丑陋的单元格.
我想要的是能够让一行均匀显示5个项目,而另一行可以显示4个项目等等.下图显示了我想要实现的目标
想要http://oi48.tinypic.com/eb1or5.jpg
我想使用Gridview,因为填充网格的数据是动态提供的.所以我可以使用gridview的适配器.如果除了gridview之外还有另一种方法,那么我愿意接受建议.
假设我有2 个项目,其中RecyclerView每个项目innerrecyclerview有大约100 个项目,它们都是垂直的或任何对现有问题没有任何影响的项目。
我已经在其他 stackoverflow 问题或其他 android 博客上实现了此处提供的方法,但没有帮助。
我有一个问题onbindviewholder,项目 1 内部RecyclerView的onbindviewholder所有元素(即 100 个)一次被调用,并且它们没有回收或任何东西,因为onbindviewholder没有通过滚动来调用,而这应该是正常行为RecyclerView。
以及如何进行innerrecyclerview回收,因为所有其他帖子都没有谈到这一点。
CourseRVAdapter 或 ParentAdapter
public class CourseRVAdapter extends RecyclerView.Adapter<CourseRVAdapter.SimpleViewHolder> {
private Context mContext;
private List<data> merchantlist;
private List<data> merchantlist2;
private RecyclerView horizontalList;
Typeface MRR;
private Typeface MR;
public class SimpleViewHolder extends RecyclerView.ViewHolder {
public final TextView title;
private HorizontalRVAdapter horizontalAdapter;
public SimpleViewHolder(View view) {
super(view); …Run Code Online (Sandbox Code Playgroud)