Android回收视图问题
我试图得到一些工作应用程序界面的外观和感觉。现在我被它的一个活动流程卡住了。喜欢 我被两件事困住了: 问题是:如何像在视频中一样在marker和recyclerview之间进行绑定。我还想根据recyclerview中可见的项目显示标记 完成:我尝试了recyclerview addonScrollListener,但这对我不起作用 回收视图:Android回收视图问题,android,google-maps,google-maps-markers,android-recyclerview,Android,Google Maps,Google Maps Markers,Android Recyclerview,我试图得到一些工作应用程序界面的外观和感觉。现在我被它的一个活动流程卡住了。喜欢 我被两件事困住了: 问题是:如何像在视频中一样在marker和recyclerview之间进行绑定。我还想根据recyclerview中可见的项目显示标记 完成:我尝试了recyclerview addonScrollListener,但这对我不起作用 回收视图: final LinearLayoutManager manager = new LinearLayoutManager(this, LinearLay
final LinearLayoutManager manager = new LinearLayoutManager(this, LinearLayoutManager.HORIZONTAL, false);
recyclerView.setLayoutManager(manager);
recyclerView.setHasFixedSize(true);
this.bottomSheetAdapter1 = new com.development.haebix.adapters.BottomSheetAdapter(this, mEventInfos);
recyclerView.setAdapter(bottomSheetAdapter1);
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
super.onScrollStateChanged(recyclerView, newState);
setMarkerSelected(mEventInfos.get(newState).getMarker());
}
});
根据位置代码更改标记颜色
private void setMarkerSelected(Marker marker) {
if (previousMarker != null) {
previousMarker.setIcon(BitmapDescriptorFactory.fromBitmap(new IconGenerator(this)
.makeIcon("school")));}
IconGenerator icon = new IconGenerator(this);
icon.setStyle(IconGenerator.STYLE_ORANGE);
marker.setIcon(BitmapDescriptorFactory.fromBitmap(icon.makeIcon("school")));
previousMarker = marker;
}
请帮我提一些建议/建议,以便我能做到这一点。提前谢谢
试着这样做:
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
int position = mLayoutManager.findFirstCompletelyVisibleItemPosition();
setMarkerSelected(mEventInfos.get(position).getMarker());
}
});
mLayoutManager是您用于recyclerview的布局管理器我认为这是视图寻呼机而不是recyclerview。@PushpendraChoudhary它是RecyclerService我在谈论您基于该链接的需求。@PushpendraChoudhary是的,我也在谈论同样的内容。如果你这么认为的话,它是可回收的。不,它不起作用。应用程序在索引不足的情况下崩溃。因为Position coming-1您是否正在执行此操作
OnScroll
或onScrollStateChanged
?如果没有可见的项目,它将返回-1,但在滚动时会崩溃。请在使用它之前尝试检查Position是否不是-1?