首页 > 解决方案 > 膨胀类 ja.burhanrashid52.photoeditor.PhotoEditorView 时出错

问题描述

目前,我正在使用PhotoEditor库开发一个 android 应用程序。我已按照页面上的说明遵循Getting StartedSetting up the View部分。但是,不知何故,我无法膨胀包含PhotoEditorView. 这是我的代码:

XML:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@android:color/transparent">

        <ja.burhanrashid52.photoeditor.PhotoEditorView
            android:id="@+id/photoEditorView"
            android:layout_width="match_parent"
            android:layout_height="match_parent" >
        </ja.burhanrashid52.photoeditor.PhotoEditorView>

</RelativeLayout>

分段:

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    // Inflate the layout for this fragment
    try {
        final View view = inflater.inflate(R.layout.app_fragment_edit_picture, container, false);
    }
    catch (Exception e) {
        LogHelper.LogError("TEST");
    }

    return null;
}

我把try-catchand放在return null那里只是为了测试。

错误:

二进制 XML 文件第 9 行:二进制 XML 文件第 9 行:膨胀类 ja.burhanrashid52.photoeditor.PhotoEditorView 时出错

有人有线索吗?

根据要求,这是完整的堆栈跟踪:

30 更多起因:java.lang.reflect.InvocationTargetException 在 java.lang.reflect.Constructor.newInstance(Native Method) 在 android.view.LayoutInflater.createView(LayoutInflater.java:619) ... 35 更多起因:java .lang.NoClassDefFoundError:解析失败:Lja/burhanrashid52/photoeditor/R$styleable;在 ja.burhanrashid52.photoeditor.PhotoEditorView.init(PhotoEditorView.java:72) 在 ja.burhanrashid52.photoeditor.PhotoEditorView.(PhotoEditorView.java:48) ... 37 更多原因:java.lang.ClassNotFoundException:没有在路径上找到类“ja.burhanrashid52.photoeditor.R$styleable”:DexPathList[[zip file“/data/app/com.mobileop-1/base.apk”],nativeLibraryDirectories=[/data/app/com.mobileop -1/lib/arm, /v​​endor/lib, /system/lib]] 在 dalvik.system.BaseDexClassLoader。findClass(BaseDexClassLoader.java:56) at java.lang.ClassLoader.loadClass(ClassLoader.java:511) at java.lang.ClassLoader.loadClass(ClassLoader.java:469) ... 39 更多被抑制:java.lang.ClassNotFoundException : ja.burhanrashid52.photoeditor.R$styleable 在 java.lang.Class.classForName(Native Method) 在 java.lang.BootClassLoader.findClass(ClassLoader.java:781) 在 java.lang.BootClassLoader.loadClass(ClassLoader.java: 841) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:504) ... 40 多个原因:java.lang.NoClassDefFoundError:使用引导类加载器找不到类;没有可用的堆栈跟踪 ClassNotFoundException: ja.burhanrashid52.photoeditor.R$styleable at java.lang.Class.classForName(Native Method) at java.lang.BootClassLoader.findClass(ClassLoader.java:781) at java.lang.BootClassLoader.loadClass(ClassLoader.java :841) at java.lang.ClassLoader.loadClass(ClassLoader.java:504) ... 40 多个原因:java.lang.NoClassDefFoundError:使用引导类加载器找不到类;没有可用的堆栈跟踪 ClassNotFoundException: ja.burhanrashid52.photoeditor.R$styleable at java.lang.Class.classForName(Native Method) at java.lang.BootClassLoader.findClass(ClassLoader.java:781) at java.lang.BootClassLoader.loadClass(ClassLoader.java :841) at java.lang.ClassLoader.loadClass(ClassLoader.java:504) ... 40 多个原因:java.lang.NoClassDefFoundError:使用引导类加载器找不到类;没有可用的堆栈跟踪 NoClassDefFoundError:使用引导类加载器找不到类;没有可用的堆栈跟踪 NoClassDefFoundError:使用引导类加载器找不到类;没有可用的堆栈跟踪

标签: javaandroidandroid-layout

解决方案


你必须返回一个视图,你在函数中返回 null。

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle 
savedInstanceState) {
// Inflate the layout for this fragment
try {
    final View view = inflater.inflate(R.layout.app_fragment_edit_picture, container, 
false);
}
catch (Exception e) {
    LogHelper.LogError("TEST");
}

return view;
}

推荐阅读