Android.- widget.RelativeLayout können nicht umgewandelt werden, android.- widget.Bildansicht
Ich versuche, die Instanz einer Bildansicht definiert in einer XML-layout-Datei:
<RelativeLayout
android:id="@+id/visual_compass_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/output_container" >
<ImageView
android:id="@+id/visual_compass"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:contentDescription="Compass"
android:scaleType="fitStart"
android:src="@drawable/compass_rose" />
</RelativeLayout>
Aber ich bekomme immer diese common language runtime-Fehler:
... java.lang.ClassCastException: android.widget.RelativeLayout cannot be
cast to android.widget.ImageView ... at net.example.MainActivity.onCreate
(MainActivity.java:57)
Line "57" ist, dass man:
compassView = (ImageView) findViewById(R.id.visual_compass);
Ich kann nicht herausfinden, warum dieser Fehler tritt geworfen; ich sehe nicht das problem mit dem code. Hat jemand elso wissen?
Danke, Felix D.
haben Sie versucht, zu reinigen und wieder aufzubauen Ihr Projekt?
Was meinst du genau? Ich arbeite mit Eclipse: also sollte ich eine neue erstellen peoject und kopieren Sie alle geänderten Dateien von der alten ont?
Nein, es ist eine option im Eclipse - clean, würde es löschen aller generierten Dateien, und dann haben Sie wieder bauen, die werden diese neu. (Projekt -> Reinigen Sie, falls Sie es nicht wissen)
Sind Sie sicher, dass Sie nicht versehentlich schreiben
Ok, danke für Eure schnellen Kommentare. Ich werde versuchen, die Reinigung der Projekt. Und meine Ergebnisse hier posten. @Ahmad Und ja, ich bin sicher.
Was meinst du genau? Ich arbeite mit Eclipse: also sollte ich eine neue erstellen peoject und kopieren Sie alle geänderten Dateien von der alten ont?
Nein, es ist eine option im Eclipse - clean, würde es löschen aller generierten Dateien, und dann haben Sie wieder bauen, die werden diese neu. (Projekt -> Reinigen Sie, falls Sie es nicht wissen)
Sind Sie sicher, dass Sie nicht versehentlich schreiben
RelativeLayout compassView;
[...]? Wenn nicht, dann Reinigung wird das Projekt wahrscheinlich helfen, wie andere schon vorgeschlagen.Ok, danke für Eure schnellen Kommentare. Ich werde versuchen, die Reinigung der Projekt. Und meine Ergebnisse hier posten. @Ahmad Und ja, ich bin sicher.
InformationsquelleAutor felixd | 2013-07-16
Du musst angemeldet sein, um einen Kommentar abzugeben.
Stellen Sie sicher, dass in Ihrem code das
compassView
istImageView
variable nur und versuchen, darauf zuzugreifen, wieIst und wenn alles korrekt ist, dann versuchen Sie, reinigen Sie und Bauen Sie Ihr Projekt wieder aus dem Menü
Project-> clean.
undProejct-> Build
.InformationsquelleAutor GrIsHu