【发布时间】:2019-03-28 14:45:35
【问题描述】:
我正在使用RecyclerView 来显示一些数据。对于每个项目,我都有一个自定义布局,在一些文本视图旁边有一个 RecyclerView:
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v7.widget.RecyclerView
android:layout_width="180dp"
android:layout_height="45dp"
android:id="@+id/recycler_view"/>
//Other text views
</RelativeLayout>
这是我的适配器类:
class UserViewHolder extends RecyclerView.ViewHolder {
View itemView;
RecyclerView recyclerView;
UserViewHolder(View itemView) {
super(itemView);
this.itemView = itemView;
recyclerView = itemView.findViewById(R.id.recycler_view);
}
void bind(User user) {
itemView.setOnClickListener(view -> {
//Move to user Activity
});
UserAdapter adapter = new UserAdapter(user.list);
recyclerView.setAdapter(adapter);
itemView.bringToFront(); //Doesn't work!!!
}
}
我已经在整个itemView 上设置了点击监听器,所以我可以被重定向到用户的活动。问题是当我单击RecyclerView 中存在的元素时,我没有被重定向。我试图将itemView 放在RecyclerView 前面,但没有运气。我应该怎么做,即使我点击RecyclerView,我也可以被重定向到用户活动?谢谢!
编辑:
这就是我的 itemView 布局的样子:
<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:focusable="true"
android:clickable="true">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
//One TextView
//One ImageView
//One RecyclerView
</RelativeLayout>
</android.support.v7.widget.CardView>
这是它的图像:
【问题讨论】:
标签: android android-recyclerview android-adapter android-viewholder