[英]Error java.lang.ArithmeticException: divide by zero
我需要為我的應用程序創建一個SpannedGridLayoutManager
,但是當我啟動它時,會出現錯誤:
java.lang.ArithmeticException:除以零。
如果你把SpannedGridLayoutManager.Orientation.VERTICAL
然后元素將不會顯示。 我嘗試使用LinearLayoutManager
,一切都得到了很好的反映。
val user = list[position]
val list = ArrayList<String>()
for (p in user) {
if (p.photo!= null && p.photo!="")
list.add(p.photo!!)
}
val spannedGridLayoutManager = SpannedGridLayoutManager(
orientation = SpannedGridLayoutManager.Orientation.VERTICAL,
spans = 4)
mAdapter = Adapter()
spannedGridLayoutManager.spanSizeLookup = SpannedGridLayoutManager.SpanSizeLookup{
SpanSize(2, 2)
}
holder.view.rec_im.adapter = mAdapter
holder.view.rec_im.layoutManager = spannedGridLayoutManager
mAdapter.update(activity, context, list)
適配器
override fun onBindViewHolder(holder: ViewHolder, position: Int) {
val photo = list[position]
Picasso.get().load(photo).into(holder.view.image2)
}
試試下面的方法
recyclerView.setLayoutManager(getGridLayoutManager());
private GridLayoutManager getGridLayoutManager() {
final GridLayoutManager manager = new GridLayoutManager(getActivity(), 2);
manager.setSpanSizeLookup(new GridLayoutManager.SpanSizeLookup() {
@Override
public int getSpanSize(int position) {
if (categoryList != null && categoryList.size() % 2 == 0) {
return 1;
} else if (categoryList != null && position == (categoryList.size() - 1)) {
return 2;
} else {
return 1;
}
}
});
return manager;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.