Java 如何在recyclerview中获取getFirstVisiblePosition()和getChildAt(0)
如何在Java 如何在recyclerview中获取getFirstVisiblePosition()和getChildAt(0),java,android,android-recyclerview,Java,Android,Android Recyclerview,如何在recyclerview中获取getFirstVisiblePosition()和getChildAt(0)?因为我想在用户单击项目时获得位置 listview中的代码是 index = listview.getFirstVisiblePosition(); View v = listview.getChildAt(0); top = (v == null) ? 0 : (v.getTop() - listview.getPaddingTop()); 但我想用recyclerview 如
recyclerview
中获取getFirstVisiblePosition()
和getChildAt(0)
?因为我想在用户单击项目时获得位置
listview中的代码是
index = listview.getFirstVisiblePosition();
View v = listview.getChildAt(0);
top = (v == null) ? 0 : (v.getTop() - listview.getPaddingTop());
但我想用recyclerview
如何设置它?这两个都可以通过LayoutManager进行设置:
layoutManager.findViewByPosition(position);
layoutManager.findFirstVisibleItemPosition();
这两个都可以通过LayoutManager获得:
layoutManager.findViewByPosition(position);
layoutManager.findFirstVisibleItemPosition();
如果您使用的是
LinearLayoutManager
,则可以使用:
int findFirstVisibleItemPosition()代码>如果您使用的是LinearLayoutManager
,则可以使用:
int findFirstVisibleItemPosition()
您可以在视图中使用getAdapterPosition()
。例如:
private class myViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
public myViewHolder(View view) {
super(view);
view.setOnclickListener(this);
}
@Override
public void onClick(View view) {
int clickedItemPosition = view.getAdapterPosition();
}
}
您可以在视图中使用getAdapterPosition()
。例如:
private class myViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
public myViewHolder(View view) {
super(view);
view.setOnclickListener(this);
}
@Override
public void onClick(View view) {
int clickedItemPosition = view.getAdapterPosition();
}
}
对不起,在哪里设置您需要强制转换到特殊视图并使用addView对不起,在哪里设置您需要强制转换到特殊视图并使用addView