我正在使用OpenCV开发一个Android应用程序。我将JavaCameraPreview扩展到ScanPreview,如下所示
公共类ScanCameraPreview扩展了JavaCameraView {
private static final String TAG = "Sample::Tutorial3View";
public ScanCameraPreview(Context context, AttributeSet attrs)
{
super(context, attrs);
Log.d(this.toString(), "starting camera preview");
//mCamera.getParameters().get
}
这是使用ScanCameraPreview
的CameraActivity类的布局<FrameLayout 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" >
<com.example.androiddms.ScanCameraPreview
android:id="@+id/camera_surface_view"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:visibility="gone"
/>
<TextView
android:id="@+id/timer_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="left"
android:rotation="270"
android:layout_marginBottom="20dip"
android:padding="12dip"
android:background="#AA000000"
android:textColor="#ffffffff" />
当我尝试调试应用程序时,我注意到了这个错误
12-11 11:17:46.087: E/AndroidRuntime(27249): FATAL EXCEPTION: main
12-11 11:17:46.087: E/AndroidRuntime(27249): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.androiddms/com.example.androiddms.CameraActivity}: android.view.InflateException: Binary XML file line #6: Error inflating class com.example.androiddms.ScanCameraPreview
发生此错误后,我发现ScanCameraPreview类的实例化存在一些问题,如下所示
请帮我解决这个问题。我用谷歌搜索并尝试了类似的问题,但无法解决它。
答案 0 :(得分:1)
我的 OpenCV项目中存在完全相同的问题。然后我尝试了一个示例OpenCV项目,但仍然得到了
The following class could not be instantiated
和
java.lang.NoClassDefFoundError: org/opencv/R$styleable
错误。我想您也可能错过了将 OpenCV 库正确包含到项目中的步骤。请按照此链接上的手动步骤进行操作。
Manual OpenCV4Android SDK setup
对我来说很好。
答案 1 :(得分:0)
为CustomView添加所有三种类型的构造函数。即ScanCameraPreview
public ScanCameraPreview(Context context) {
super(context);
}
public ScanCameraPreview(Context context, AttributeSet attrs) {
super(context, attrs);
}
public ScanCameraPreview(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
并查看您的问题是否已解决。