Reputation: 63
I've this layout xml, named pagina.xml:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center_vertical" >
<TextView
android:id="@+id/descrizione"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:text="Large Text"
android:textAppearance="?android:attr/textAppearanceLarge" />
<Button
android:id="@+id/scelta1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:text="Button" />
<Button
android:id="@+id/scelta3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/scelta1"
android:layout_alignLeft="@+id/scelta1"
android:layout_marginBottom="16dp"
android:text="Button" />
<Button
android:id="@+id/scelta2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/scelta3"
android:layout_alignLeft="@+id/scelta3"
android:layout_marginBottom="18dp"
android:text="Button" />
</RelativeLayout>
I want to write the description of the element, but when I assign to a variable the textview element, the emulator crashes. This is the code:
public int posizione;
public String stanza;
public string[] azioni;
public int[] vai;
public XmlPullParser xpp;
public EditText descr;
public Button scelta_1, scelta_2, scelta_3;
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.pagina);
try {
carica_stanza(posizione);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (XmlPullParserException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
descr = (EditText) this.findViewById(R.id.descrizione);
scelta_1= (Button) this.findViewById(R.id.scelta1);
scelta_2= (Button) this.findViewById(R.id.scelta2);
scelta_3= (Button) this.findViewById(R.id.scelta3);
}
Help me to understand!
Upvotes: 0
Views: 2955
Reputation: 4181
Try
public TextView descr;
// ...
descr = (TextView) this.findViewById(R.id.descrizione);
instead of
public EditText descr;
// ...
descr = (EditText) this.findViewById(R.id.descrizione);
You are using TextView
in xml layout. But you tried to cast this object to EditText
What are you going to use? If you want this text to be editable you need to change your component to EditText
in xml and in your class.
Upvotes: 2