简体   繁体   English

Android Studio目标导航抽屉SDK版本

[英]Android studio target navigation drawer sdk version

My problem is that my application is not working on devices that have a version number less than 23. And my application contains a navigaton drawer if there is no navigation drawer it works well but if there is, it says: 我的问题是我的应用程序无法在版本号小于23的设备上运行。如果没有导航抽屉,则我的应用程序包含一个navigaton抽屉,它工作正常,但如果存在,它会显示:

"Unfortunately TestApp stopped working" “不幸的是,TestApp停止了工作”

And in android studio I see this: 在android studio中,我看到以下内容:

     java.lang.RuntimeException: Unable to start activity ComponentInfo{gazete.alperennn.gazeteler/gazete.alperennn.gazeteler.MainActivity}: android.view.InflateException: Binary XML file line #15: Error inflating class android.support.design.widget.NavigationView
                                                   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2092)
                                                   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2117)
                                                   at android.app.ActivityThread.access$700(ActivityThread.java:134)
                                                   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1218)
                                                   at android.os.Handler.dispatchMessage(Handler.java:99)
                                                   at android.os.Looper.loop(Looper.java:137)
                                                   at android.app.ActivityThread.main(ActivityThread.java:4867)
                                                   at java.lang.reflect.Method.invokeNative(Native Method)
                                                   at java.lang.reflect.Method.invoke(Method.java:511)
                                                   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1007)
                                                   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:774)
                                                   at dalvik.system.NativeStart.main(Native Method)
                                                Caused by: android.view.InflateException: Binary XML file line #15: Error inflating class android.support.design.widget.NavigationView
                                                   at android.view.LayoutInflater.createView(LayoutInflater.java:613)
                                                   at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687)
                                                   at android.view.LayoutInflater.rInflate(LayoutInflater.java:746)
                                                   at android.view.LayoutInflater.inflate(LayoutInflater.java:489)
                                                   at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
                                                   at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
                                                   at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:276)
                                                   at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:139)
                                                   at gazete.alperennn.gazeteler.MainActivity.onCreate(MainActivity.java:214)
                                                   at android.app.Activity.performCreate(Activity.java:5047)
                                                   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094)
                                                   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2056)
                                                   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2117) 
                                                   at android.app.ActivityThread.access$700(ActivityThread.java:134) 
                                                   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1218) 
                                                   at android.os.Handler.dispatchMessage(Handler.java:99) 
                                                   at android.os.Looper.loop(Looper.java:137) 
                                                   at android.app.ActivityThread.main(ActivityThread.java:4867) 
                                                   at java.lang.reflect.Method.invokeNative(Native Method) 
                                                   at java.lang.reflect.Method.invoke(Method.java:511) 
                                                   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1007) 
                                                   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:774) 
                                                   at dalvik.system.NativeStart.main(Native Method) 
                                                Caused by: java.lang.reflect.InvocationTargetException
                                                   at java.lang.reflect.Constructor.constructNative(Native Method)
                                                   at java.lang.reflect.Constructor.newInstance(Constructor.java:417)
                                                   at android.view.LayoutInflater.createView(LayoutInflater.java:587)
                                                   at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687) 
                                                   at android.view.LayoutInflater.rInflate(LayoutInflater.java:746) 
                                                   at android.view.LayoutInflater.inflate(LayoutInflater.java:489) 
                                                   at android.view.LayoutInflater.inflate(LayoutInflater.java:396) 
                                                   at android.view.LayoutInflater.inflate(LayoutInflater.java:352) 
                                                   at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:276) 
                                                   at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:139) 
                                                   at gazete.alperennn.gazeteler.MainActivity.onCreate(MainActivity.java:214) 
                                                   at android.app.Activity.performCreate(Activity.java:5047) 
                                                   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094) 
                                                   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2056) 
                                                   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2117) 
                                                   at android.app.ActivityThread.access$700(ActivityThread.java:134) 
                                                   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1218) 
                                                   at android.os.Handler.dispatchMessage(Handler.java:99) 
                                                   at android.os.Looper.loop(Looper.java:137) 
                                                   at android.app.ActivityThread.main(ActivityThread.java:4867) 
                                                   at java.lang.reflect.Method.invokeNative(Native Method) 
                                                   at java.lang.reflect.Method.invoke(Method.java:511) 
                                                   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1007) 
                                                   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:774) 
                                                   at dalvik.system.NativeStart.main(Native Method) 
                                                Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x7f02005e
                                                   at android.content.res.Resources.getValue(Resources.java:1026)
                                                   at android.support.v7.widget.AppCompatDrawableManager.loadDrawableFromDelegates(AppCompatDrawableManager.java:285)
                                                   at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:195)
                                                   at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:190)
                                                   at android.support.v7.view.menu.MenuItemImpl.getIcon(MenuItemImpl.java:421)
                                                   at android.support.design.internal.NavigationMenuPresenter$NavigationMenuAdapter.prepareMenuItems(NavigationMenuPresenter.java:475)
                                                   at android.support.design.internal.NavigationMenuPresenter$NavigationMenuAdapter.update(NavigationMenuPresenter.java:436)
                                                   at android.support.design.internal.NavigationMenuPresenter.updateMenuView(NavigationMenuPresenter.java:112)
                                                   at android.support.design.widget.NavigationView.inflateMenu(NavigationView.java:241)
                                                   at android.support.design.widget.NavigationView.<init>(NavigationView.java:169)
                                                   at android.support.design.widget.NavigationView.<init>(NavigationView.java:95)
                                                   at java.lang.reflect.Constructor.constructNative(Native Method) 
                                                   at java.lang.reflect.Constructor.newInstance(Constructor.java:417) 
                                                   at android.view.LayoutInflater.createView(LayoutInflater.java:587) 
                                                   at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:687) 
                                                   at android.view.LayoutInflater.rInflate(LayoutInflater.java:746) 
                                                   at android.view.LayoutInflater.inflate(LayoutInflater.java:489) 
                                                   at android.view.LayoutInflater.inflate(LayoutInflater.java:396) 
                                                   at android.view.LayoutInflater.inflate(LayoutInflater.java:352) 
                                                   at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:276) 
                                                   at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:139) 
                                                   at gazete.alperennn.gazeteler.MainActivity.onCreate(MainActivity.java:214) 
                                                   at android.app.Activity.performCreate(Activity.java:5047) 
                                                   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1094) 
                                                   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2056) 
                                                   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2117) 
                                                   at android.app.ActivityThread.access$700(ActivityThread.java:134) 
                                                   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1218) 
                                                   at android.os.Handler.dispatchMessage(Handler.java:99) 
                                                   at android.os.Looper.loop(Looper.java:137) 
                                                   at android.app.ActivityThread.main(ActivityThread.java:4867) 
                                                   at java.lang.reflect.Method.invokeNative(Native Method) 
                                                   at java.lang.reflect.Method.invoke(Method.java:511) 
                                                   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1007) 
                                                   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:774) 
                                                   at dalvik.system.NativeStart.main(Native Method) 

My gradle script: 我的gradle脚本:

apply plugin: 'com.android.application'

android {
compileSdkVersion 23
buildToolsVersion "23.0.3"

defaultConfig {
    applicationId "gazete.alperennn.gazeteler"
    minSdkVersion 15
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"
}
buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}

    dependencies {
     compile fileTree(dir: 'libs', include: ['*.jar'])
     testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.2.1'
   compile 'com.android.support:design:23.2.1'
    }

My second question is: 我的第二个问题是:

I also want my application work on tablets how can I accomplish that? 我还希望我的应用程序在平板电脑上工作,我该如何完成?

Thank you for your answers and please forgive my english. 感谢您的回答,请原谅我的英语。

This is naw_header_main: 这是naw_header_main:

<?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="@dimen/nav_header_height"
android:background="@drawable/headers"
android:gravity="bottom"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:theme="@style/ThemeOverlay.AppCompat.Dark">


<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:paddingTop="72dp"
    android:textSize="18dp"
    android:text="Tüm Gazeteler"
    android:textAppearance="@style/TextAppearance.AppCompat.Body1" />



     </LinearLayout>

This is activitiy_main 这是activitiy_main

    <android.support.v4.widget.DrawerLayout                xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:openDrawer="start">

<include
    layout="@layout/app_bar_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

<android.support.design.widget.NavigationView
    android:id="@+id/nav_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    android:fitsSystemWindows="true"
    app:headerLayout="@layout/nav_header_main"
    app:menu="@menu/activity_main_drawer" />

    </android.support.v4.widget.DrawerLayout>

This is content main: 这是主要内容:

 <?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"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/relativeLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
app:layout_behavior="@string/appbar_scrolling_view_behavior"
tools:context="com.example.alperenn.slidermenu.MainActivity"
tools:showIn="@layout/app_bar_main">

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Hello World!" />
 </RelativeLayout>

And this activity_main_drawer: 而这个activity_main_drawer:

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

<group android:checkableBehavior="single">
    <item android:title="Kategoriler">
        <menu>
            <item
                android:id="@+id/nav_tech"
                android:icon="@drawable/tec"
                android:title="Teknoloji" />
            <item
                android:id="@+id/nav_spor"
                android:icon="@drawable/spor"
                android:title="Spor" />
            <item
                android:id="@+id/nav_gundem"
                android:icon="@drawable/newss"
                android:title="Gundem" />
        </menu>
    </item>
</group>

Check if there any resources missing in your xml codes, 检查您的xml代码中是否缺少任何资源,
for ex: Empty String in your strings.xml or erroneous drawable files. 例如:您的strings.xml或错误的可绘制文件中为空字符串。

In activity_main.xml, you include app_bar_main. 在activity_main.xml中,包含app_bar_main。

<include
    layout="@layout/app_bar_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

So the error is in app_bar_main.xml, or maybe this file does not even exists. 因此,错误出在app_bar_main.xml中,或者此文件甚至不存在。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM