From a91644759985c28e03bef7276a479fba6ffbb213 Mon Sep 17 00:00:00 2001 From: NekoInverter <7741672-NekoInverter@users.noreply.gitlab.com> Date: Fri, 18 Dec 2020 15:24:54 +0800 Subject: [PATCH] Fix search layout crash --- .../hippo/ehviewer/widget/SearchLayout.java | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/hippo/ehviewer/widget/SearchLayout.java b/app/src/main/java/com/hippo/ehviewer/widget/SearchLayout.java index 6e481e56d..845b5b40d 100644 --- a/app/src/main/java/com/hippo/ehviewer/widget/SearchLayout.java +++ b/app/src/main/java/com/hippo/ehviewer/widget/SearchLayout.java @@ -103,7 +103,7 @@ public class SearchLayout extends EasyRecyclerView implements CompoundButton.OnC Resources resources = context.getResources(); mInflater = LayoutInflater.from(context); - mLayoutManager = new LinearLayoutManager(context); + mLayoutManager = new SearchLayoutManager(context); mAdapter = new SearchAdapter(); setLayoutManager(mLayoutManager); setAdapter(mAdapter); @@ -383,4 +383,20 @@ public class SearchLayout extends EasyRecyclerView implements CompoundButton.OnC } } } + + static class SearchLayoutManager extends LinearLayoutManager { + + public SearchLayoutManager(Context context) { + super(context); + } + + @Override + public void onLayoutChildren(RecyclerView.Recycler recycler, RecyclerView.State state) { + try { + super.onLayoutChildren(recycler, state); + } catch (IndexOutOfBoundsException e) { + e.printStackTrace(); + } + } + } }