umgewandelt werden. Ich habe this Leitfaden auf die Erstellung einer RecyclerView
, aber ich habe in einen Haken geraten. Der Code gibt es ist nicht ganz klar, aber wenn die benutzerdefinierte Gebäude Recyclerview.Adpater
, hat diese Methode:RelativeLayout kann nicht in TextView in LayoutInflator
@Override
public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent,
int viewType) {
// create a new view
TextView v = (TextView) LayoutInflater.from(parent.getContext())
.inflate(R.layout.my_text_view, parent, false);
// set the view's size, margins, paddings and layout parameters
...
ViewHolder vh = new ViewHolder(v);
return vh;
}
Nun, ich kann nicht scheinen, um herauszufinden, wo die R.layout.my_text_view
herkam. Sie haben es nicht in ihrer Layoutdatei angegeben. Also, als ich versuchte, diesen Code in meinen Adapter zu stecken, sagte er mir, dass das Symbol nicht gefunden wurde. Also, habe ich es als id meine TextView
:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/activity_recycle"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".recycle.RecycleActivity">
<android.support.v7.widget.RecyclerView
android:id="@+id/recycler_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".recycle.RecycleActivity"/>
<include
layout="@layout/toolbar_main"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
<TextView
android:id="@+id/my_text_view"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
</RelativeLayout>
Aber ich kann immer noch nicht my_text_view
in R.layout.my_text_view
verwenden, weil es immer noch nicht finden kann. Ich habe auch versucht R.id.my_text_view
, die es kann finden, aber es sagt, dass es ein Layout braucht, nicht eine ID. so habe ich versucht, R.layout.activity_recycle
wie folgt aus:
@Override
public RecycleViewAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType)
{
// create a new view
TextView v = (TextView) LayoutInflater.from(parent.getContext())
.inflate(R.layout.activity_recycle, parent, false);
// set the view's size, margins, paddings and layout parameters
return new ViewHolder(v);
}
Aber das hat nicht funktioniert, und ich bekomme die Ausnahme:
java.lang.ClassCastException: android.widget.RelativeLayout kann nicht auf Android gegossen wird .widget.TextView
Was fehlt mir? Woher kam dieses geheimnisvolle my_text_view
, und wie benutze ich es?
R.layout.activity_recycle ist Layout Textansicht nimmt kein Layout. Es wird die ID des Layoutelements übernommen. –
R.layout.my_text_view ist so etwas wie ein Layout oder eine Karte, die auf Ihre Recycler-Ansicht aufblähen, wie das Listenelement –
diese Antwort überprüfen und diesem Tutorial folgen http://StackOverflow.com/a/41499210/7130121 –