相关疑难解决方法(0)

将Android支持库更新到23.2.0会导致错误:XmlPullParserException二进制XML文件行#17 <vector>标记需要viewportWidth> 0

我尝试将支持库更新到23.2.0并遇到此错误:

Exception while inflating <vector>
org.xmlpull.v1.XmlPullParserException: Binary XML file line #17<vector> tag requires viewportWidth > 0
at android.support.graphics.drawable.VectorDrawableCompat.updateStateFromTypedArray(VectorDrawableCompat.java:535)
at android.support.graphics.drawable.VectorDrawableCompat.inflate(VectorDrawableCompat.java:472)
at android.support.graphics.drawable.VectorDrawableCompat.createFromXmlInner(VectorDrawableCompat.java:436)
at android.support.v7.widget.AppCompatDrawableManager$VdcInflateDelegate.createFromXmlInner(AppCompatDrawableManager.java:829)
at android.support.v7.widget.AppCompatDrawableManager.loadDrawableFromDelegates(AppCompatDrawableManager.java:303)
at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:178)
at android.support.v7.widget.AppCompatDrawableManager.getDrawable(AppCompatDrawableManager.java:173)
at android.support.v7.widget.TintTypedArray.getDrawable(TintTypedArray.java:60)
at android.support.v7.widget.Toolbar.<init>(Toolbar.java:254)
at android.support.v7.widget.Toolbar.<init>(Toolbar.java:196)
at java.lang.reflect.Constructor.constructNative(Native Method)
at java.lang.reflect.Constructor.newInstance(Constructor.java:417)
at android.view.LayoutInflater.createView(LayoutInflater.java:594)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:696)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:755)
at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:267)
at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:129)
at com.chotot.vn.v2.activities.MainActivity.onCreate(MainActivity.java:121)
at android.app.Activity.performCreate(Activity.java:5133)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2175)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2261)
at android.app.ActivityThread.access$600(ActivityThread.java:141)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1256)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5103)
at java.lang.reflect.Method.invokeNative(Native Method) …
Run Code Online (Sandbox Code Playgroud)

android android-support-library

87
推荐指数
11
解决办法
6万
查看次数

扩展类android.support.v7.widget.Toolbar时出错?

我正在尝试按照此方法为我的应用程序获取Material Design .

每当我运行App时,它都会显示以下错误:

扩展类android.support.v7.widget.Toolbar时出错.

我检查了我是否正确添加了appcompat.但这对我来说都是正确的.那么请告诉我,我做错了什么?

的build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 21
    buildToolsVersion '21.0.2'

    defaultConfig {
        applicationId "io.bxbxbai.feedlistviewdemo"
        minSdkVersion 14
        targetSdkVersion 21
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles 'proguard-rules.pro'
        }
    }
}

configurations {
    all*.exclude group: 'com.android.support', module: 'support-v4'
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile project(':materialDesign')
    compile 'com.balysv.materialmenu:material-menu:1.4.0'
    compile 'com.android.support:appcompat-v7:21.+'
}
Run Code Online (Sandbox Code Playgroud)

logcat的

02:11.641  20583-20583/io.bxbxbai.feedlistviewdemo E/AndroidRuntime? FATAL EXCEPTION: main
    Process: io.bxbxbai.feedlistviewdemo, PID: 20583
    java.lang.RuntimeException: Unable to start activity …
Run Code Online (Sandbox Code Playgroud)

android android-appcompat material-design

65
推荐指数
7
解决办法
13万
查看次数

Vector Drawables标志在支持库24+上不起作用

今天,似乎Android Nougat已经发布.因此,我比以往任何时候都更兴奋地为分屏等新功能优化我的应用程序.我想推送一个针对SDK版本的应用程序版本,24这样就不会通知用户我的应用程序可能无法在分屏中运行.但是,这样做意味着我还应该更新到24支持库的版本.与许多其他人一样,我在更新到23.2.0支持库版本时遇到了问题.但是,我按照这个答案解决了我的问题.现在问题是从版本24.0.0和支持库的版本开始返回.在我的所有测试中,我使用链接答案中描述的gradle标志:

vectorDrawables.useSupportLibrary = true
Run Code Online (Sandbox Code Playgroud)

同样重要的是要注意,这只发生在前Lolliop设备(Kitkat及以下)上.棒棒糖和向上工作完美.使用以下依赖项时,该标志正常工作:

compile 'com.android.support:support-v4:23.4.0'
compile 'com.android.support:appcompat-v7:23.4.0'
compile 'com.android.support:design:23.4.0'
compile 'com.android.support:cardview-v7:23.4.0'
Run Code Online (Sandbox Code Playgroud)

但是在使用这些依赖项时,我遇到的崩溃类似于使用该标志之前的崩溃:

compile 'com.android.support:support-v4:24.2.0'
compile 'com.android.support:appcompat-v7:24.2.0'
compile 'com.android.support:design:24.2.0'
compile 'com.android.support:cardview-v7:24.2.0'
Run Code Online (Sandbox Code Playgroud)

这是崩溃的堆栈跟踪:

FATAL EXCEPTION: main
Process: com.badon.brigham.time, PID: 2070
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.badon.brigham.time/com.badon.brigham.time.MainActivity}: android.content.res.Resources$NotFoundException: File res/drawable/abc_vector_test.xml from drawable resource ID #0x7f02004f
      at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195)
      at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
      at android.app.ActivityThread.access$800(ActivityThread.java:135)
      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
      at android.os.Handler.dispatchMessage(Handler.java:102)
      at android.os.Looper.loop(Looper.java:136)
      at android.app.ActivityThread.main(ActivityThread.java:5017)
      at java.lang.reflect.Method.invokeNative(Native Method)
      at java.lang.reflect.Method.invoke(Method.java:515)
      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595) …
Run Code Online (Sandbox Code Playgroud)

android android-support-library android-gradle-plugin android-support-design

23
推荐指数
2
解决办法
2万
查看次数

EditText drwableLeft不适用于矢量

在我的应用程序中,我使用在支持库23.2中添加的矢量drawables用于显示矢量图标,它工作得很好但是当我将矢量设置为EditText的drawableLeft时,它在pre-lollipop android版本中不起作用.在运行时,发生ResourceNotFound异常.

Caused by: android.content.res.Resources$NotFoundException: File 
res/drawable/layer_ic_user.xml from drawable resource ID #0x7f0200b3
Run Code Online (Sandbox Code Playgroud)

这是我的gradle配置:

apply plugin: 'com.android.application'

android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
    applicationId "com.example.test"
    minSdkVersion 14
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"
    vectorDrawables.useSupportLibrary = true
    generatedDensities = []
}

buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'),
       'proguard-rules.pro'
    }
}
sourceSets { main { assets.srcDirs = ['src/main/assets', 'src/main/res/assets/'] } }
  }

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:23.3.0'
compile 'com.android.support:support-v4:23.3.0' …
Run Code Online (Sandbox Code Playgroud)

android vector

10
推荐指数
2
解决办法
2328
查看次数

升级支持库到23.2.0和ResourceNotFoundException使用PreferenceFragmen的CheckBoxPreference

我没有改变任何与我的设置有关的内容在这个版本和最后一个有效的版本之间.

崩溃发生在API 16上,而在API 23上它运行正常.这是在Genymotion.我没有可访问的较低实际设备.

编辑 - 我已经在运行4.0.4的Sony Xperia U上测试了它,同样的崩溃发生了.

我相信我已将其跟踪归因于将支持库升级到23.2.0,因为我已降级并再次运行.

有没有其他人经历过这个?

03-01 18:36:20.693 1846-1846/? E/AndroidRuntime: FATAL EXCEPTION: main
                                                 android.view.InflateException: Binary XML file line #19: Error inflating class android.widget.CheckBox
                                                     at android.view.LayoutInflater.createView(LayoutInflater.java:613)
                                                     at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
                                                     at android.view.LayoutInflater.onCreateView(LayoutInflater.java:660)
                                                     at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:685)
                                                     at android.view.LayoutInflater.inflate(LayoutInflater.java:466)
                                                     at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
                                                     at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
                                                     at android.preference.Preference.onCreateView(Preference.java:480)
                                                     at android.preference.Preference.getView(Preference.java:451)
                                                     at android.preference.PreferenceGroupAdapter.getView(PreferenceGroupAdapter.java:221)
                                                     at android.widget.AbsListView.obtainView(AbsListView.java:2267)
                                                     at android.widget.ListView.makeAndAddView(ListView.java:1769)
                                                     at android.widget.ListView.fillDown(ListView.java:672)
                                                     at android.widget.ListView.fillFromTop(ListView.java:733)
                                                     at android.widget.ListView.layoutChildren(ListView.java:1608)
                                                     at android.widget.AbsListView.onLayout(AbsListView.java:2102)
                                                     at android.view.View.layout(View.java:13754)
                                                     at android.view.ViewGroup.layout(ViewGroup.java:4362)
                                                     at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1649)
                                                     at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1507)
                                                     at android.widget.LinearLayout.onLayout(LinearLayout.java:1420)
                                                     at android.view.View.layout(View.java:13754)
                                                     at android.view.ViewGroup.layout(ViewGroup.java:4362)
                                                     at android.widget.FrameLayout.onLayout(FrameLayout.java:448)
                                                     at android.view.View.layout(View.java:13754)
                                                     at android.view.ViewGroup.layout(ViewGroup.java:4362) …
Run Code Online (Sandbox Code Playgroud)

android-support-library genymotion

6
推荐指数
1
解决办法
615
查看次数