1

The errors says that im trying to cast a TextView into a Button, but I dont see anything wrong with my code

XML:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/bg_grass"
tools:context=".Game3Activity" >

<ImageView
    android:id="@+id/imageView3"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:contentDescription="@string/junk"
    android:src="@drawable/bg_woodslab" />

<ImageView
    android:id="@+id/game3_q1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:contentDescription="@string/junk"
    android:src="@drawable/btn_picturehole" />
<TextView
    android:id="@+id/game3_q2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBottom="@id/imageView3"
    android:layout_centerHorizontal="true"
    android:background="@drawable/btn_wordhole"    
    android:gravity="center"
    android:textSize="20sp" />
<Button
    android:id="@+id/game3_choice2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="74dp"
    android:contentDescription="@string/junk"/>

<Button
    android:id="@+id/game3_choice1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@id/game3_choice2"
    android:layout_alignBottom="@id/game3_choice2"
    android:layout_toLeftOf="@id/game3_choice2"
    android:contentDescription="@string/junk"/>

<Button
    android:id="@+id/game3_choice3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@id/game3_choice2"
    android:layout_alignBottom="@id/game3_choice2"
    android:layout_toRightOf="@id/game3_choice2"
    android:contentDescription="@string/junk"/>

Java onCreate function:

image = (ImageView)findViewById(R.id.game3_q1);
textview = (TextView)findViewById(R.id.game3_q2);

Variables were already initialized as private variables (private ImageView image)etc The app immediately crashes after I try to set the imageview. Any solutions?

4

3 回答 3

4

尝试清理和重建项目。Eclipse 和 ADT 就是这样的错误,尤其是当您在 .xml 文件中交换两种视图的位置时。

于 2013-08-01T15:03:59.527 回答
0

清理您的项目并重新构建,或者查看您的Activity onCreate方法中调用了哪个布局。

例如,如果setContentView不引用您发布的布局文件,那么当然会发生一些不好的事情。

请注意,由于缺乏相反的证据,我假设您发布的代码发生在 中Activity,可能在 中。onCreate

如果不是这种情况,请发布您的整个堆栈跟踪和更多代码。

于 2013-08-01T15:06:25.453 回答
0

确保您已导入正确的类:

import android.widget.ImageView;
import android.widget.TextView;
于 2013-08-01T15:08:17.617 回答