如果在textview之前,则复选框运行时错误

时间:2012-03-25 10:25:50

标签: android android-layout

我用几个textview和复选框编写了一个应用程序。 现在我正在尝试添加一个新的复选框:

如果我在textview之前添加它,我会收到运行时错误, 如果我在它之后添加,则没有运行时错误。

CODE: 这样就可以了。

<TextView
    android:id="@+id/tvInstructions"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="10dp"
    android:text="@string/impostazioni_19"
    android:textColor="#FF0000"
    android:textStyle="bold" />

<CheckBox
    android:id="@+id/cbPowerSavingMode"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/light_sens_9" >
</CheckBox>

这样就不起作用了:

<CheckBox
    android:id="@+id/cbPowerSavingMode"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/light_sens_9" >
</CheckBox>

 <TextView
    android:id="@+id/tvInstructions"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_margin="10dp"
    android:text="@string/impostazioni_19"
    android:textColor="#FF0000"
    android:textStyle="bold" />

有什么问题?

03-25 10:18:25.955: E/AndroidRuntime(1546): FATAL EXCEPTION: main
03-25 10:18:25.955: E/AndroidRuntime(1546): java.lang.RuntimeException: Unable to start activity ComponentInfo{it.android.smartscreenoffpro/it.android.smartscreenoffpro.ActivityImpostazioni}: java.lang.ClassCastException: android.widget.TextView
03-25 10:18:25.955: E/AndroidRuntime(1546):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1768)
03-25 10:18:25.955: E/AndroidRuntime(1546):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1784)
03-25 10:18:25.955: E/AndroidRuntime(1546):     at android.app.ActivityThread.access$1500(ActivityThread.java:123)
03-25 10:18:25.955: E/AndroidRuntime(1546):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:939)
03-25 10:18:25.955: E/AndroidRuntime(1546):     at android.os.Handler.dispatchMessage(Handler.java:99)
03-25 10:18:25.955: E/AndroidRuntime(1546):     at android.os.Looper.loop(Looper.java:130)
03-25 10:18:25.955: E/AndroidRuntime(1546):     at android.app.ActivityThread.main(ActivityThread.java:3835)
03-25 10:18:25.955: E/AndroidRuntime(1546):     at java.lang.reflect.Method.invokeNative(Native Method)
03-25 10:18:25.955: E/AndroidRuntime(1546):     at java.lang.reflect.Method.invoke(Method.java:507)
03-25 10:18:25.955: E/AndroidRuntime(1546):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:847)
03-25 10:18:25.955: E/AndroidRuntime(1546):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:605)
03-25 10:18:25.955: E/AndroidRuntime(1546):     at dalvik.system.NativeStart.main(Native Method)
03-25 10:18:25.955: E/AndroidRuntime(1546): Caused by: java.lang.ClassCastException: android.widget.TextView
03-25 10:18:25.955: E/AndroidRuntime(1546):     at it.android.smartscreenoffpro.ActivityImpostazioni.onCreate(ActivityImpostazioni.java:51)
03-25 10:18:25.955: E/AndroidRuntime(1546):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
03-25 10:18:25.955: E/AndroidRuntime(1546):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1722)
03-25 10:18:25.955: E/AndroidRuntime(1546):     ... 11 more

1 个答案:

答案 0 :(得分:0)

尝试清理项目并重新编译将解决问题。 以下是清洁项目所需的步骤。 转到项目窗口,然后单击清除...菜单项。将出现一个对话框,向您显示要清理的项目