8
12-01 00:36:28.058: E/AndroidRuntime(5062): Caused by: java.lang.ClassCastException: android.widget.TextView cannot be cast to android.widget.EditText

如果有人知道,我会遇到错误然后告诉我......我将非常感谢


爪哇:

Log.d("Textra", title); 
Log.d("Dextra", des); 
EditText t=(EditText) findViewById(R.id.t); 
EditText d=(EditText) findViewById(R.id.des); 
t.setText(title); 
d.setText(des);

XML:

<LinearLayout 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content"> 

    <TextView 
        android:id="@+id/t" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text="" 
        android:textAppearance="?android:attr/textAppearanceLarge" /> 

    <TextView 
        android:id="@+id/des" 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:text=""/> 

</LinearLayout>
4

5 回答 5

46

删除 R.java 清理项目 保存文件 Build & Run

于 2013-04-12T07:14:25.903 回答
6
<TextView android:id="@+id/t" ... /> 
<TextView android:id="@+id/des" ... />
EditText t=(EditText) findViewById(R.id.t);
EditText d=(EditText) findViewById(R.id.des);

你想要 TextViews 还是 EditTexts?

将 XML 更改为使用 EditTexts 或将 Java 更改为使用 TextViews ...

于 2012-12-02T22:41:14.597 回答
4

我可以通过使用 project/clean 清理项目来解决它。

于 2014-06-01T06:42:05.120 回答
1

如果存在清理问题,那么它可能会引发任何转换错误。我得到了这个:

Caused by: java.lang.ClassCastException: android.widget.EditText cannot be cast to android.widget.LinearLayout

在 Eclipse 中,只需转到 Project > Clean & Select your project 来清理它。

于 2015-01-29T12:38:02.500 回答
0

您在 xml 中使用 textview,但在活动中您尝试 EditText t=(EditText) findViewById(R.id.t) - 不正确;使用 TextView t=(TextView) findViewById(R.id.t);

或将 xml TextView 更改为 EditText

于 2015-01-26T13:46:36.390 回答