【发布时间】:2017-08-21 15:53:07
【问题描述】:
我有一些项目的回收视图,我想获取屏幕中间项目的索引。现在我只能获得第一个可见项目和最后一个可见项目的项目索引中间。
这是屏幕截图: image
这是代码
myList = (RecyclerView) v.findViewById(R.id.frag_penampilanobat_pilih_bentuk);
final LinearLayoutManager layoutManager
= new LinearLayoutManager(getActivity(), LinearLayoutManager.HORIZONTAL, false);
Display display = getActivity().getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
itemWidth = getResources().getDimension(R.dimen.item_width);
padding = (size.x - itemWidth) / 2;
firstItemWidth = getResources().getDimension(R.dimen.padding_item_width);
allPixels = 0;
ExtraItemsAdapter bentuk_adapter = new ExtraItemsAdapter(0, clone, padding);
myList.setAdapter(bentuk_adapter);
myList.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
int firstPos = layoutManager.findFirstVisibleItemPosition();
int lastPos = layoutManager.findLastVisibleItemPosition();
int middle = (Math.abs(lastPos - firstPos) / 2 + firstPos) + 1;
pos_icon_bentuk = middle;
source = getActivity().getResources().getDrawable(pengingat_obat_helper.getDrawable(pos_icon_shape));
bentuk_obat.setBackground(FormatShapeColor.setColor(getActivity(), getColor(), source, pos_icon_warna_1));
}
});
我不知道该怎么做。有人知道吗?任何答案将不胜感激。 我很抱歉我的英语不好, 谢谢
【问题讨论】:
标签: android