ClassCast Exception Android Studio

时间:2015-12-12 11:22:41

标签: android xml android-studio intellij-idea classcastexception

我在运行我的项目时在android studio中遇到了ClassCastException。任何人都可以告诉我是什么导致了这个错误。

ClassCastException:com.intellij.psi.impl.source.PsiPlainTextFileImpl无法强制转换为com.intellij.psi.xml.XmlFile

感谢。

2 个答案:

答案 0 :(得分:2)

尽快归还。这个问题帮助了我。 Android Studio ClassCastException When Attempting to Open A Layout XML File。我有一个11MB xml的文件值。那就是问题所在。删除后,问题就解决了。

如果您想使用大型XML文件,请在Android Studio的bin文件夹中的idea.properties和vmoptions中添加以下代码。

**Add in idea.properties**
 #-------------------------------------------------------------    --------
# Maximum file size (kilobytes) IDE     should provide code assistance for.
# The larger file is the slower its.    editor works and higher overall system     memory requirements are
# if code assistance is enabled.     Remove this property or set to very.    large number if you need
# code assistance for any files     available regardless their size.
#---------------------------------------------------------------------
idea.max.intellisense.filesize=999999


**Add in vmoptions**


-Didea.max.intellisense.filesize=999999     # <--- new line

Reference: https://stackoverflow.com/questions/23057988/file-size-exceeds-configured-limit-2560000-code-insightfeatures-not-availabl

答案 1 :(得分:0)

如果你能分享一些代码片段会更好......

无论如何,就ClassCastException而言,这意味着你要声明某种类型的变量并将其分配给你在布局xml文件中定义的另一种类型......

例如,在xml中你可能有:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<Button
android:layout_height="wrap_content"
android:id="@+id/btn1"
android:layout_width="wrap_content">
</Button>
</LinearLayout>

但在将组件连接到代码时:

ImageView img1 = (ImageView)context.findViewById(R.id.btn1);

这将触发ClassCastException,因为你正在将一个Button转换为ImageView变量,这是你不能理解的!

如果这不能解决您的问题,那么在确定哪个代码段导致错误后发布一些代码段会更好!