2016-03-09 32 views
-1

我遵循教程Here并在Android studio中制作了一个Android应用程序。然而,在此应用崩溃启动,我得到这个错误:Android应用程序在启动时崩溃(错误膨胀类android.support.v7.internal.widget.ActionBarContextView)

03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: FATAL EXCEPTION: main 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.test.test/com.test.test.MainActivity}: android.view.InflateException: Binary XML file line #43: Error inflating class android.support.v7.internal.widget.ActionBarContextView 

我已经尝试了许多解决方案,已经为别人工作,但我有没有这样的运气。有什么办法可以解决这个问题吗?如果需要任何代码,然后问,我会发布它。我已经尝试过提供的解决方案Here,herehere因此,这些解决方案将无济于事。

感谢提前:)

编辑:

这里是主要的活动:

package com.test.test; 

import android.os.Bundle; 
import android.support.v7.app.AppCompatActivity; 
import android.view.Menu; 
import android.view.MenuItem; 

public class MainActivity extends AppCompatActivity implements topfrag.topfragListener { 

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

@Override 
public void createPic(String top, String bottom) { 
    picfrag bfrag=(picfrag)getSupportFragmentManager().findFragmentById(R.id.fragment2); 
    bfrag.setPicText(top,bottom); 
} 

@Override 
public boolean onCreateOptionsMenu(Menu menu) { 
    // Inflate the menu; this adds items to the action bar if it is present. 
    getMenuInflater().inflate(R.menu.menu_main, menu); 
    return true; 
} 

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 
    // Handle action bar item clicks here. The action bar will 
    // automatically handle clicks on the Home/Up button, so long 
    // as you specify a parent activity in AndroidManifest.xml. 
    int id = item.getItemId(); 

    //noinspection SimplifiableIfStatement 
    if (id == R.id.action_settings) { 
     return true; 
    } 

    return super.onOptionsItemSelected(item); 
} 
} 

编辑: 这里是activity_main.xml XML文件

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout 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" android:paddingLeft="@dimen/activity_horizontal_margin" 
android:paddingRight="@dimen/activity_horizontal_margin" 
android:paddingTop="@dimen/activity_vertical_margin" 
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity" 
> 

<fragment 
    android:layout_width="wrap_content" 
    android:layout_height="350dp" 
    class="com.test.test.topfrag" 
    android:id="@+id/fragment" 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true" 
    tools:layout="@layout/topfrag" /> 

<fragment 
    android:layout_width="350dp" 
    android:layout_height="320dp" 
    class="com.test.test.picfrag" 
    android:id="@+id/fragment2" 
    tools:layout="@layout/picfrag" 
    android:layout_alignParentBottom="true" 
    android:layout_centerHorizontal="true" /> 
</RelativeLayout> 

编辑:

下面是其他2 XML文件:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:background="@drawable/koala" 
android:id="@+id/picfragl"> 

<TextView 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:textAppearance="?android:attr/textAppearanceLarge" 
    android:text=" " 
    android:id="@+id/toppictext" 
    android:layout_alignParentTop="true" 
    android:layout_centerHorizontal="true" 
    android:gravity="center" 
    android:textColor="#ffffff" /> 

<TextView 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:textAppearance="?android:attr/textAppearanceLarge" 
    android:text=" " 
    android:id="@+id/bottompictext" 
    android:layout_alignParentBottom="true" 
    android:layout_centerHorizontal="true" 
    android:gravity="center" 
    android:textColor="#ffffff" /> 
</RelativeLayout> 

而其他XML文件:

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:orientation="vertical" android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:id="@+id/topfragl"> 

<EditText 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/toptext" 
    android:layout_centerHorizontal="true" 
    android:width="350dp" 
    /> 
<EditText 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/bottomtext" 
    android:layout_below="@+id/toptext" 
    android:layout_marginTop="15dp" 
    android:layout_centerHorizontal="true" 
    android:width="350dp" 
    /> 
<Button 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:id="@+id/okbutton" 
    android:text="@string/okbutton_text" 
    android:layout_below="@+id/bottomtext" 
    android:layout_marginTop="15dp" 
    android:layout_centerHorizontal="true" 
    /> 


</RelativeLayout> 

编辑:

下面是完整的日志:

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.test.test/com.test.test.MainActivity}: android.view.InflateException: Binary XML file line #43: Error inflating class android.support.v7.internal.widget.ActionBarContextView 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2092) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2117) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread.access$700(ActivityThread.java:134) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1218) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.os.Looper.loop(Looper.java:137) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:4867) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at java.lang.reflect.Method.invokeNative(Native Method) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at java.lang.reflect.Method.invoke(Method.java:511) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1007) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:774) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at dalvik.system.NativeStart.main(Native Method) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: Caused by: android.view.InflateException: Binary XML file line #43: Error inflating class android.support.v7.internal.widget.ActionBarContextView 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.createView(LayoutInflater.java:613) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.rInflate(LayoutInflater.java:746) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.rInflate(LayoutInflater.java:749) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:489) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:396) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:352) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.support.v7.app.AppCompatDelegateImplV7.createSubDecor(AppCompatDelegateImplV7.java:357) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.support.v7.app.AppCompatDelegateImplV7.ensureSubDecor(AppCompatDelegateImplV7.java:278) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:252) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:109) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at com.test.test.MainActivity.onCreate(MainActivity.java:13) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.Activity.performCreate(Activity.java:5047) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2056) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2117)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread.access$700(ActivityThread.java:134)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1218)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.os.Looper.loop(Looper.java:137)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:4867)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at java.lang.reflect.Method.invokeNative(Native Method)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at java.lang.reflect.Method.invoke(Method.java:511)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1007)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:774)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at dalvik.system.NativeStart.main(Native Method)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: Caused by: java.lang.reflect.InvocationTargetException 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at java.lang.reflect.Constructor.constructNative(Native Method) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at java.lang.reflect.Constructor.newInstance(Constructor.java:417) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.createView(LayoutInflater.java:587) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.rInflate(LayoutInflater.java:749)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:489)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:396)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:352)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.support.v7.app.AppCompatDelegateImplV7.createSubDecor(AppCompatDelegateImplV7.java:357)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.support.v7.app.AppCompatDelegateImplV7.ensureSubDecor(AppCompatDelegateImplV7.java:278)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:252)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:109)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at com.test.test.MainActivity.onCreate(MainActivity.java:13)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.Activity.performCreate(Activity.java:5047)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2056)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2117)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread.access$700(ActivityThread.java:134)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1218)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.os.Looper.loop(Looper.java:137)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:4867)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at java.lang.reflect.Method.invokeNative(Native Method)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at java.lang.reflect.Method.invoke(Method.java:511)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1007)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:774)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at dalvik.system.NativeStart.main(Native Method)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: Caused by: java.lang.NullPointerException 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.graphics.drawable.LayerDrawable.(LayerDrawable.java:85) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.graphics.drawable.LayerDrawable.(LayerDrawable.java:67) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.support.v7.internal.widget.TintManager.getDrawable(TintManager.java:194) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.support.v7.internal.widget.TintManager.getDrawable(TintManager.java:167) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.support.v7.internal.widget.TintTypedArray.getDrawable(TintTypedArray.java:62) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.support.v7.internal.widget.ActionBarContextView.(ActionBarContextView.java:68) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.support.v7.internal.widget.ActionBarContextView.(ActionBarContextView.java:60) 03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at java.lang.reflect.Constructor.constructNative(Native Method)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at java.lang.reflect.Constructor.newInstance(Constructor.java:417)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.createView(LayoutInflater.java:587)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.rInflate(LayoutInflater.java:749)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:489)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:396)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.view.LayoutInflater.inflate(LayoutInflater.java:352)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.support.v7.app.AppCompatDelegateImplV7.createSubDecor(AppCompatDelegateImplV7.java:357)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.support.v7.app.AppCompatDelegateImplV7.ensureSubDecor(AppCompatDelegateImplV7.java:278)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:252)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:109)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at com.test.test.MainActivity.onCreate(MainActivity.java:13)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.Activity.performCreate(Activity.java:5047)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2056)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2117)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread.access$700(ActivityThread.java:134)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1218)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:99)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.os.Looper.loop(Looper.java:137)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at android.app.ActivityThread.main(ActivityThread.java:4867)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at java.lang.reflect.Method.invokeNative(Native Method)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at java.lang.reflect.Method.invoke(Method.java:511)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1007)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:774)  03-09 13:08:39.597 27112-27112/com.test.test E/AndroidRuntime: at dalvik.system.NativeStart.main(Native Method)  03-09 13:08:39.648 27112-27113/com.test.test D/dalvikvm: GC_CONCURRENT freed 297K, 13% free 9461K/10759K, paused 13ms+20ms, total 69ms 03-09 13:08:39.648 27112-27112/com.test.test D/dalvikvm: WAIT_FOR_CONCURRENT_GC blocked 49ms

+0

如果您可以发布完整日志,这将有所帮助。 –

+0

为你添加gradle和活动也 –

+0

显示你的xml请 – barq

回答

-1

对不起,您访问了YouTube频道,查看作者的源代码?在视频中,他没有显示xmlactivity_main.xml或他使用的任何其他布局xml。你如何设法完成这门课程?

从他的github,我发现视频中的项目:https://github.com/buckyroberts/Source-Code-from-Tutorials/tree/master/Android_Beginners/023-030_DankMeme/java,但它缺少所有的资源(它只有java类)。

无论如何,我想在你的activity_main.xml你错过了文件末尾RelativeLayout的结束标记:</RelativeLayout>。你的IDE没有抱怨没有关闭它?

我怀疑即使你纠正了这个错误,也会出现其他错误。尝试找到本课程的完整源代码,然后按照另一个教程。

+0

Downvoters请发表评论,解释原因。谢谢 – pleft

+0

该视频是播放列表中的最终视频。他在这些视频中展示了整个项目。此外,/ RelativeLayout在我的代码中,我只是没有选择当我发布它。 – Paul

+1

@Paul但是你发布的youtube链接没有包含它。请在你的问题中更具体,并提供有效的数据。项目中还有两个布局'xml',你至少可以发布它们! – pleft

相关问题