android - InflateException 和 ClassNotFoundException 导致应用程序崩溃

标签 android classnotfoundexception inflate-exception

我正在创建一个应用程序,当用户选择支票时,第二个 Activity 就会被调用。但是,当调用第二个 Activity 时,我的应用程序崩溃并且日志猫在我的 paycheckactivity oncreate 方法上显示错误。

第一个 Activity

public class TableListActivity extends Activity {
private ListView mListView;
private TableListAdapter mAdapter;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_table_list);

    mListView = (ListView)findViewById(R.id.listView);
    mAdapter = new TableListAdapter(this, DataStore.CHECKS);
    mListView.setAdapter(mAdapter);
    mListView.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,
                long arg3) {
            Intent intent = new Intent (TableListActivity.this, PayCheckActivity.class);
            intent.putExtra(PayCheckActivity.Extra_check, arg2);
            startActivity(intent);
        }
    });
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.table_list, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
        int id = item.getItemId();

        if (id == R.id.action_refresh) {
            Toast.makeText(this, "Refresh", Toast.LENGTH_SHORT).show();
        return true;
        }
        return super.onOptionsItemSelected(item);}}

第二个 Activity

public class PayCheckActivity extends Activity {
    public static final String Extra_check= "abc";

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.paycheck);
    }
}

逻辑猫

03-06 21:51:11.275: D/dalvikvm(1108): GC_FOR_ALLOC freed 36K, 4% free 3135K/3244K, paused 50ms, total 50ms
03-06 21:51:11.285: I/dalvikvm-heap(1108): Grow heap (frag case) to 4.200MB for 1127536-byte allocation
03-06 21:51:11.325: D/dalvikvm(1108): GC_FOR_ALLOC freed 1K, 3% free 4234K/4348K, paused 36ms, total 36ms
03-06 21:51:11.695: D/(1108): HostConnection::get() New Host Connection established 0xb7fc9f38, tid 1108
03-06 21:51:11.775: W/EGL_emulation(1108): eglSurfaceAttrib not implemented
03-06 21:51:11.805: D/OpenGLRenderer(1108): Enabling debug mode 0
03-06 21:51:14.175: D/AndroidRuntime(1108): Shutting down VM
03-06 21:51:14.175: W/dalvikvm(1108): threadid=1: thread exiting with uncaught exception (group=0xb1a5fba8)
03-06 21:51:14.225: E/AndroidRuntime(1108): FATAL EXCEPTION: main
03-06 21:51:14.225: E/AndroidRuntime(1108): Process: edu.udallas.tableservice, PID: 1108
03-06 21:51:14.225: E/AndroidRuntime(1108): java.lang.RuntimeException: Unable to start activity ComponentInfo{edu.udallas.tableservice/edu.tableservice.PayCheckActivity}: android.view.InflateException: Binary XML file line #15: Error inflating class br
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.app.ActivityThread.access$800(ActivityThread.java:135)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.os.Handler.dispatchMessage(Handler.java:102)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.os.Looper.loop(Looper.java:136)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.app.ActivityThread.main(ActivityThread.java:5017)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at java.lang.reflect.Method.invokeNative(Native Method)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at java.lang.reflect.Method.invoke(Method.java:515)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at dalvik.system.NativeStart.main(Native Method)
03-06 21:51:14.225: E/AndroidRuntime(1108): Caused by: android.view.InflateException: Binary XML file line #15: Error inflating class br
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:707)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:290)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.app.Activity.setContentView(Activity.java:1929)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at edu.tableservice.PayCheckActivity.onCreate(PayCheckActivity.java:22)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.app.Activity.performCreate(Activity.java:5231)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)
03-06 21:51:14.225: E/AndroidRuntime(1108):     ... 11 more
03-06 21:51:14.225: E/AndroidRuntime(1108): Caused by: java.lang.ClassNotFoundException: Didn't find class "android.view.br" on path: DexPathList[[zip file "/data/app/edu.udallas.tableservice-1.apk"],nativeLibraryDirectories=[/data/app-lib/edu.udallas.tableservice-1, /system/lib]]
03-06 21:51:14.225: E/AndroidRuntime(1108):     at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.view.LayoutInflater.createView(LayoutInflater.java:559)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.view.LayoutInflater.onCreateView(LayoutInflater.java:652)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:66)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.view.LayoutInflater.onCreateView(LayoutInflater.java:669)
03-06 21:51:14.225: E/AndroidRuntime(1108):     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:694)
03-06 21:51:14.225: E/AndroidRuntime(1108):     ... 21 more
03-06 21:51:17.095: I/Process(1108): Sending signal. PID: 1108 SIG: 9
03-06 22:03:15.835: D/dalvikvm(1134): GC_FOR_ALLOC freed 39K, 4% free 3135K/3248K, paused 89ms, total 91ms
03-06 22:03:15.845: I/dalvikvm-heap(1134): Grow heap (frag case) to 4.200MB for 1127536-byte allocation
03-06 22:03:15.885: D/dalvikvm(1134): GC_FOR_ALLOC freed 2K, 3% free 4233K/4352K, paused 35ms, total 35ms
03-06 22:03:16.215: D/(1134): HostConnection::get() New Host Connection established 0xb7edd508, tid 1134
03-06 22:03:16.315: W/EGL_emulation(1134): eglSurfaceAttrib not implemented
03-06 22:03:16.335: D/OpenGLRenderer(1134): Enabling debug mode 0
03-06 22:03:17.795: D/AndroidRuntime(1134): Shutting down VM
03-06 22:03:17.795: W/dalvikvm(1134): threadid=1: thread exiting with uncaught exception (group=0xb1a5fba8)
03-06 22:03:17.845: E/AndroidRuntime(1134): FATAL EXCEPTION: main
03-06 22:03:17.845: E/AndroidRuntime(1134): Process: edu.udallas.tableservice, PID: 1134
03-06 22:03:17.845: E/AndroidRuntime(1134): java.lang.RuntimeException: Unable to start activity ComponentInfo{edu.udallas.tableservice/edu.tableservice.PayCheckActivity}: android.view.InflateException: Binary XML file line #15: Error inflating class br
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.app.ActivityThread.access$800(ActivityThread.java:135)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.os.Handler.dispatchMessage(Handler.java:102)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.os.Looper.loop(Looper.java:136)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.app.ActivityThread.main(ActivityThread.java:5017)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at java.lang.reflect.Method.invokeNative(Native Method)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at java.lang.reflect.Method.invoke(Method.java:515)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at dalvik.system.NativeStart.main(Native Method)
03-06 22:03:17.845: E/AndroidRuntime(1134): Caused by: android.view.InflateException: Binary XML file line #15: Error inflating class br
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:707)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:290)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.app.Activity.setContentView(Activity.java:1929)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at edu.tableservice.PayCheckActivity.onCreate(PayCheckActivity.java:22)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.app.Activity.performCreate(Activity.java:5231)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)
03-06 22:03:17.845: E/AndroidRuntime(1134):     ... 11 more
03-06 22:03:17.845: E/AndroidRuntime(1134): Caused by: java.lang.ClassNotFoundException: Didn't find class "android.view.br" on path: DexPathList[[zip file "/data/app/edu.udallas.tableservice-1.apk"],nativeLibraryDirectories=[/data/app-lib/edu.udallas.tableservice-1, /system/lib]]
03-06 22:03:17.845: E/AndroidRuntime(1134):     at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.view.LayoutInflater.createView(LayoutInflater.java:559)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.view.LayoutInflater.onCreateView(LayoutInflater.java:652)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:66)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.view.LayoutInflater.onCreateView(LayoutInflater.java:669)
03-06 22:03:17.845: E/AndroidRuntime(1134):     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:694)
03-06 22:03:17.845: E/AndroidRuntime(1134):     ... 21 more

最佳答案

在这里,你得到两个 Exception小...

# android.view.InflateException :当您尝试 inflate 时,它会导致您的 View /XML。由于您使用的是 CustomAdapter ,因此您在 onCreateView() 中膨胀列表项的 XML方法和导致问题的 XML...LogCat直接表示为...

Caused by: android.view.InflateException: Binary XML file line #15: Error inflating class br

# java.lang.ClassNotFoundException : 这是因为你试图把 HTML标签 <br></br>在您的 XML 中不受 Android XML 支持. LogCat清楚地表明您正在使用 <br>被这条消息标记...

Caused by: java.lang.ClassNotFoundException: Didn't find class "android.view.br"

android 中没有名为br 的 View ...所以从 XML 中删除它...您的问题将得到解决。

关于android - InflateException 和 ClassNotFoundException 导致应用程序崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22240610/

相关文章:

Android E/Parcel:解码时找不到类(仅在三星 Tab3 上)

android - java.lang.RuntimeException : Unable to instantiate activity ComponentInfo/ClassNotFoundException 错误

android - 使用自定义操作栏布局时出现 Robolectric InflateException

java - android.view.InflateException 错误膨胀类 com.etsy.android.grid.StaggeredGridView

android - 如何使用 NavController.navigate 替换 fragment 而不是将其添加到顶部

java - 如何在Retrofit 2.0+中正确设置注释和查询?

Android Studio,导入类从gradle文件中消失

java.lang.ClassNotFoundException 用于 tomcat 中的 servlet 与 eclipse

安卓.view.InflateException : Binary XML file line #28: Error inflating class fragment

android - 使用 ksoap 发送数据集