即使我使用algolia:itemLayout指定了项目布局,也遇到了此错误。
这是更完整的错误日志:
java.lang.IllegalStateException: To use the Hits widget, you need to specify an item layout with algolia:itemLayout.
at com.algolia.instantsearch.ui.helpers.InstantSearch.prepareWidget(InstantSearch.java:473)
at com.algolia.instantsearch.ui.helpers.InstantSearch.prepareWidget(InstantSearch.java:452)
at com.algolia.instantsearch.ui.helpers.InstantSearch.processAllListeners(InstantSearch.java:409)
at com.algolia.instantsearch.ui.helpers.InstantSearch.processActivity(InstantSearch.java:353)
at com.algolia.instantsearch.ui.helpers.InstantSearch.<init>(InstantSearch.java:89)
at io.poolclub.fragments.BoardFragment.onViewCreated(BoardFragment.kt:171)
它指向的行是这一行
helper = InstantSearch(活动,搜索者)
我不明白为什么它甚至会导致此错误,因为它根本没有指向Hits
小部件。
无论如何,这是我的Hits小部件:
<com.algolia.instantsearch.ui.views.Hits
android:id="@+id/question_bottom_sheet_recycler"
android:layout_width="0dp"
android:layout_height="200dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/question_bottom_sheet_message"
android:layout_marginTop="24dp"
app:layout_constraintBottom_toTopOf="@+id/question_bottom_sheet_ask_button"
android:layout_marginBottom="24dp"
algolia:itemLayout="@layout/hits_item"
algolia:infiniteScroll="true"
algolia:autoHideKeyboard="true"
android:background="@color/green900"/>
因此它确实使用algolia:itemLayout指定了项目布局。 它所指向的布局绝对是主题,并且拼法也是如此。 它还使用Algolia文档中指定的数据绑定。不知道如何解决这个问题,因为它说我很想念,显然存在。