如何从CardView中的onClick打开片段? 我在Cardview中有一个列表,当我点击时想要显示在另一个片段中。 这是adapter.class
public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener{
public TextView fecha_celula;
public TextView nombre_celula;
public ViewHolder(View itemView) {
super(itemView);
fecha_celula = (TextView) itemView.findViewById(R.id.fecha_celula);
nombre_celula = (TextView) itemView.findViewById(R.id.nombre_celula);
itemView.setOnClickListener(this);
}
@Override
public void onClick(View v) {
Fragment nameAdd = new name_add();
getSupportFragmentManager().beginTransaction().replace(R.id.container, predicaAdd).commit();
}
}
这是layout.xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:clickable="true"
android:layout_margin="10dp"
android:id="@+id/card_view"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
card_view:cardCornerRadius="2dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:duplicateParentState="true">
<ImageView
android:id="@+id/avatar_celula"
android:src="@drawable/ic_action_celula"
android:scaleType="centerCrop"
android:layout_marginRight="10dp"
android:layout_width="150dp"
android:layout_height="150dp" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:text="Large Text"
android:id="@+id/fecha_celula"
android:layout_alignParentTop="true"
android:layout_toEndOf="@+id/avatar_celula" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceSmall"
android:text="Small Text"
android:id="@+id/nombre_celula"
android:layout_below="@+id/fecha_celula"
android:layout_toEndOf="@+id/avatar_celula" />
</RelativeLayout>
我解决了onClick问题,现在我的问题是我无法打开另一个片段。 我如何在myActivity中调用我的方法?
答案 0 :(得分:1)
OnClickListener
实际上并未在任何地方使用,您必须将其连接到视图,例如你在构造函数中的itemView
。
itemView.setOnClickListener(this);
在onClick()
方法中,您可以使用getPosition()
获取所点击元素的索引。