2016-06-15 2 views
0

여기 레이아웃 문제가 발생했습니다. 여기오류 : layout_width 특성 오류를 제공해야합니다. 비록 내가 그것을 제공했습니다

<?xml version="1.0" encoding="utf-8"?> 

<!-- Drawer Layout --> 

<android.support.v4.widget.DrawerLayout 
    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:id="@+id/drawer_layout" 
    android:fitsSystemWindows="true"> 

    <!--Main content--> 

    <RelativeLayout 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 

     <android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" 
      xmlns:app="http://schemas.android.com/apk/res-auto" 
      android:id="@+id/mtoolbar" 
      android:minHeight="?attr/actionBarSize" 
      android:background="?attr/colorPrimary" 
      android:layout_width="match_parent" 
      app:theme="@style/ThemeOverlay.AppCompat.Dark" 
      app:popupTheme="@style/ThemeOverlay.AppCompat.Light" 
      android:layout_height="wrap_content"> 

     </android.support.v7.widget.Toolbar> 


     <TextView 
      android:text="@string/hello_world" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_below="@id/mtoolbar" 
      android:layout_centerInParent="true"/> 

    </RelativeLayout> 

    <!--Navigation Drawer--> 
    <android.support.design.widget.NavigationView 
     android:id="@+id/main_drawer" 
     android:layout_width="wrap_content" 
     android:layout_height="match_parent" 
     android:layout_gravity="start" 
     app:headerLayout="@layout/drawer_header" 
     app:menu="@menu/menu_drawer"/> 
</android.support.v4.widget.DrawerLayout> 

drawer_header.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="150dp" 
    android:background="@drawable/header" 
    android:padding="16dp" 
    android:orientation="vertical" 
    android:gravity="bottom"> 

    <TextView 
     android:textColor="#ffffff" 
     android:textSize="18sp" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:text="Hello World " 
    /> 
</LinearLayout> 

입니다 그리고 여기에 내가 여전히 오류가 표시됩니다 DrawerLayout의 layout_width 매개 변수를 제공 한 있지만 로그 캣 출력을

06-15 21:38:05.125 14798 14798 I art           Late-enabling -Xcheck:jni 
06-15 21:38:05.323 14798 14798 W System          ClassLoader referenced unknown path: /data/app/xyz.sayangoswami.opoforums-2/lib/arm 
06-15 21:38:05.472 14798 14798 I AppCompatViewInflater      app:theme is now deprecated. Please move to using android:theme instead. 
06-15 21:38:05.515 14798 14798 D AndroidRuntime        Shutting down VM 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        FATAL EXCEPTION: main 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        Process: xyz.sayangoswami.opoforums, PID: 14798 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        java.lang.RuntimeException: Unable to start activity ComponentInfo{xyz.sayangoswami.opoforums/xyz.sayangoswami.opoforums.MainActivity}: android.view.InflateException: Binary XML file line #39: Binary XML file line #39: Error inflating class android.support.design.widget.NavigationView 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2416) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2476) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.app.ActivityThread.-wrap11(ActivityThread.java) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1344) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.os.Handler.dispatchMessage(Handler.java:102) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.os.Looper.loop(Looper.java:148) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.app.ActivityThread.main(ActivityThread.java:5417) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at java.lang.reflect.Method.invoke(Native Method) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:726) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        Caused by: android.view.InflateException: Binary XML file line #39: Binary XML file line #39: Error inflating class android.support.design.widget.NavigationView 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.view.LayoutInflater.inflate(LayoutInflater.java:539) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.view.LayoutInflater.inflate(LayoutInflater.java:423) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.view.LayoutInflater.inflate(LayoutInflater.java:374) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:280) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:140) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at xyz.sayangoswami.opoforums.MainActivity.onCreate(MainActivity.java:28) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.app.Activity.performCreate(Activity.java:6251) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1107) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2369) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        ... 9 more 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        Caused by: android.view.InflateException: Binary XML file line #39: Error inflating class android.support.design.widget.NavigationView 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.view.LayoutInflater.createView(LayoutInflater.java:645) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:764) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:704) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.view.LayoutInflater.rInflate(LayoutInflater.java:835) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:798) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.view.LayoutInflater.inflate(LayoutInflater.java:515) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        ... 17 more 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        Caused by: java.lang.reflect.InvocationTargetException 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at java.lang.reflect.Constructor.newInstance(Native Method) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.view.LayoutInflater.createView(LayoutInflater.java:619) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        ... 22 more 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        Caused by: android.view.InflateException: Binary XML file line #2: Binary XML file line #2: You must supply a layout_width attribute. 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.view.LayoutInflater.inflate(LayoutInflater.java:539) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.view.LayoutInflater.inflate(LayoutInflater.java:423) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.support.design.internal.NavigationMenuPresenter.inflateHeaderView(NavigationMenuPresenter.java:189) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.support.design.widget.NavigationView.inflateHeaderView(NavigationView.java:263) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.support.design.widget.NavigationView.<init>(NavigationView.java:174) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.support.design.widget.NavigationView.<init>(NavigationView.java:96) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        ... 24 more 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        Caused by: java.lang.UnsupportedOperationException: Binary XML file line #2: You must supply a layout_width attribute. 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.content.res.TypedArray.getLayoutDimension(TypedArray.java:709) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.view.ViewGroup$LayoutParams.setBaseAttributes(ViewGroup.java:6889) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.view.ViewGroup$MarginLayoutParams.<init>(ViewGroup.java:7071) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.widget.LinearLayout$LayoutParams.<init>(LinearLayout.java:1911) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.widget.LinearLayout.generateLayoutParams(LinearLayout.java:1816) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.widget.LinearLayout.generateLayoutParams(LinearLayout.java:1815) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        at android.view.LayoutInflater.inflate(LayoutInflater.java:502) 
06-15 21:38:05.520 14798 14798 E AndroidRuntime        ... 29 more 

을합니다. 도움이된다면

, 나는 사전에 APPCOMPAT의 V7 및 compileSdkVersion 21 설계 지원 라이브러리와 buildToolsVersion 21.1.0

감사를 사용하고 있습니다.

문제가 해결되었습니다.

문제는 내가 인 drawer_header.xml 2 번 줄에 http://schemas.android.com/apk/res/android이라는 대문자로 된 것입니다.

+1

오류는 그것이'inflateHeaderView()'말한다 - 당신이 할 수있는 'drawer_header.xml'을 포함 시키시겠습니까? – ianhanniballake

+0

'NavigationView'의 xml 파일의 2 번 줄에 무엇이 있습니까? – Vucko

+0

@ianhanniballake 잠깐만 기다려주세요. – sayan

답변

2
당신은 당신의 drawer_header.xml 파일에 오류를보고해야한다

가, 네임 스페이스가 안 모두 대문자 :

xmlns:android="http://schemas.android.com/apk/res/android" 

하지 :

xmlns:android="HTTP://SCHEMAS.ANDROID.COM/APK/RES/ANDROID" 
+0

그래도 질문이 있습니다. 네임 스페이스는 대소 문자를 구분해야합니까? – sayan

+0

그들은 분명히 있습니다,하지만 그들이해야하는지, 누가 알겠습니까? : D 어쨌든, 모든 대문자는 네임 스페이스를 외치는 것처럼 보입니다. D – Vucko

+0

@ Sayan98 사실, 나는 그들이 있어야한다고 생각하지 않지만 그렇습니다. – Bryan

관련 문제