Android ClassCastException:

时间:2016-02-20 13:02:23

标签: java android

我正在尝试将Google Sample App集成到我自己的应用中。 The Sample App说明了Camera2 API的使用。示例应用程序编译并运行正常。

如上所述,我想在我的应用中使用CameraActivity.javaCamera2BasicFragment.javaAutoFitTextureView.java。但是,当我运行我的应用程序时,我收到此错误:

java.lang.ClassCastException:android.view.TextureView无法强制转换为openbook.pub.sypa.view.AutoFitTextureView

此行抛出异常(在Camera2BasicFragment.onViewCreated中):

mTextureView = (AutoFitTextureView) view.findViewById(R.id.texture);

AutoFitTextureView与示例应用程序保持不变,并从TextureView扩展:

public class AutoFitTextureView extends android.view.TextureView {

我甚至将样本应用程序中的build.gradle文件复制到我自己的应用程序中,以确保它依赖于相同的库。我也清理了这个项目。

为什么会出现此错误?为什么它在Google的示例应用程序中运行良好?

1 个答案:

答案 0 :(得分:2)

  

为什么我会收到此错误?

据推测,膨胀到view的布局有TextureView,而不是AutoFitTextureView

  

为什么它在Google的示例应用程序中运行良好?

由于Google的示例应用layout有一个AutoFitTextureView