- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用的是 eclipse,之前只使用 android-support-v7-appcompt。以最低 API 10 为目标 API 23。我想开始更新一些 UI,所以我获取了 android-support-design 库并决定从这里开始的 NavigationView (http://www.android4devs.com/2015/06/navigation-view-material-design-support.html)。
起初我在我的主要 Activity android.support.design.widget.NavigationView 膨胀期间遇到错误,因为它找不到资源,因为我的 android.support.design 库不针对 API 23。我修复了那个,现在我在同一个通货膨胀期间仍然处于我的最新错误,看起来它找不到 android.support.design.internal.NavigationMenuView 。
这是在运行 API 19 的模拟器中(我上次尝试时 api 23 英特尔模拟器没有为我加载)。我在所有项目(设计、appcompat、我的基础库和我的 ndk/java 混合代码、构建我的 apk 的顶级项目,这样我就可以根据我的数据拥有不同的 apk)中添加了一堆 pro-guard。
这导致过去两天损失了许多小时,但到目前为止没有任何收获。截至昨天,这两个支持库都是最新的。我仍在使用 eclipse,因为当我几个月前尝试转换到 Android Studio 时它破坏了我的整个目录结构并且不会构建我所有的 ndk 库(有几个)所以我没有时间研究 Android Studio一会儿,我想这对我没有帮助。
我的主要 Activity 开始:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
try{
setContentView(R.layout.activity_main);
}
catch (Exception e) {
e.printStackTrace();
}
....
这是捕获的堆栈跟踪的打印输出
11-22 15:01:30.394: W/dalvikvm(4312): Unable to resolve superclass of Landroid/support/design/internal/NavigationMenuView; (1893)
11-22 15:01:30.394: W/dalvikvm(4312): Link of class 'Landroid/support/design/internal/NavigationMenuView;' failed
11-22 15:01:30.824: W/System.err(4244): android.view.InflateException: Binary XML file line #28: Error inflating class android.support.design.widget.NavigationView
11-22 15:01:30.824: W/System.err(4244): at android.view.LayoutInflater.createView(LayoutInflater.java:621)
11-22 15:01:30.824: W/System.err(4244): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:697)
11-22 15:01:30.824: W/System.err(4244): at android.view.LayoutInflater.rInflate(LayoutInflater.java:756)
11-22 15:01:30.824: W/System.err(4244): at android.view.LayoutInflater.inflate(LayoutInflater.java:492)
11-22 15:01:30.824: W/System.err(4244): at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
11-22 15:01:30.824: W/System.err(4244): at android.view.LayoutInflater.inflate(LayoutInflater.java:353)
11-22 15:01:30.824: W/System.err(4244): at android.support.v7.app.AppCompatDelegateImplV7.setContentView(AppCompatDelegateImplV7.java:256)
11-22 15:01:30.824: W/System.err(4244): at android.support.v7.app.AppCompatActivity.setContentView(AppCompatActivity.java:109)
11-22 15:01:30.824: W/System.err(4244): at com.company.app.MainActivity.onCreate(MainActivity.java:68)
11-22 15:01:30.824: W/System.err(4244): at android.app.Activity.performCreate(Activity.java:5231)
11-22 15:01:30.824: W/System.err(4244): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
11-22 15:01:30.824: W/System.err(4244): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159)
11-22 15:01:30.824: W/System.err(4244): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
11-22 15:01:30.824: W/System.err(4244): at android.app.ActivityThread.access$800(ActivityThread.java:135)
11-22 15:01:30.824: W/System.err(4244): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
11-22 15:01:30.824: W/System.err(4244): at android.os.Handler.dispatchMessage(Handler.java:102)
11-22 15:01:30.824: W/System.err(4244): at android.os.Looper.loop(Looper.java:136)
11-22 15:01:30.824: W/System.err(4244): at android.app.ActivityThread.main(ActivityThread.java:5017)
11-22 15:01:30.824: W/System.err(4244): at java.lang.reflect.Method.invokeNative(Native Method)
11-22 15:01:30.824: W/System.err(4244): at java.lang.reflect.Method.invoke(Method.java:515)
11-22 15:01:30.824: W/System.err(4244): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
11-22 15:01:30.824: W/System.err(4244): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
11-22 15:01:30.824: W/System.err(4244): at dalvik.system.NativeStart.main(Native Method)
11-22 15:01:30.824: W/System.err(4244): Caused by: java.lang.reflect.InvocationTargetException
11-22 15:01:30.824: W/System.err(4244): at java.lang.reflect.Constructor.constructNative(Native Method)
11-22 15:01:30.824: W/System.err(4244): at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
11-22 15:01:30.824: W/System.err(4244): at android.view.LayoutInflater.createView(LayoutInflater.java:595)
11-22 15:01:30.824: W/System.err(4244): ... 22 more
11-22 15:01:30.824: W/System.err(4244): Caused by: android.view.InflateException: Binary XML file line #17: Error inflating class android.support.design.internal.NavigationMenuView
11-22 15:01:30.824: W/System.err(4244): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:708)
11-22 15:01:30.824: W/System.err(4244): at android.view.LayoutInflater.inflate(LayoutInflater.java:469)
11-22 15:01:30.824: W/System.err(4244): at android.view.LayoutInflater.inflate(LayoutInflater.java:397)
11-22 15:01:30.824: W/System.err(4244): at android.support.design.internal.NavigationMenuPresenter.getMenuView(NavigationMenuPresenter.java:97)
11-22 15:01:30.824: W/System.err(4244): at android.support.design.widget.NavigationView.<init>(NavigationView.java:165)
11-22 15:01:30.824: W/System.err(4244): at android.support.design.widget.NavigationView.<init>(NavigationView.java:94)
11-22 15:01:30.824: W/System.err(4244): ... 25 more
11-22 15:01:30.824: W/System.err(4244): Caused by: java.lang.ClassNotFoundException: Didn't find class "android.support.design.internal.NavigationMenuView" on path: DexPathList[[zip file "/data/app/com.company.<app>.nyc-2.apk"],nativeLibraryDirectories=[/data/app-lib/com.company.app.nyc-2, /vendor/lib, /system/lib]]
11-22 15:01:30.824: W/System.err(4244): at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56)
11-22 15:01:30.824: W/System.err(4244): at java.lang.ClassLoader.loadClass(ClassLoader.java:497)
11-22 15:01:30.824: W/System.err(4244): at java.lang.ClassLoader.loadClass(ClassLoader.java:457)
11-22 15:01:30.834: W/System.err(4244): at android.view.LayoutInflater.createView(LayoutInflater.java:559)
11-22 15:01:30.834: W/System.err(4244): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:697)
11-22 15:01:30.834: W/System.err(4244): ... 30 more
res/values/styles.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">@color/primary</item>
<item name="colorPrimaryDark">@color/primaryDark</item>
<item name="colorAccent">@color/accent</item>
<item name="divider">@color/divider</item>
<item name="windowNoTitle">true</item>
</style>
<style name="SceneTheme" parent="AppTheme" >
<item name="android:typeface">monospace</item>
</style>
<style name="MenuTheme" parent="AppTheme" >
<item name="android:typeface">monospace</item>
<item name="android:textSize">12sp</item>
</style>
</resources>
资源/值-v21
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:colorPrimary">@color/primary</item>
<item name="android:colorPrimaryDark">@color/primaryDark</item>
<item name="android:statusBarColor">@color/primary</item>
</style>
</resources>
主要 Activity xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.company.app.MainActivity" >
<LinearLayout
android:layout_height="match_parent"
android:layout_width="match_parent"
android:orientation="vertical"
>
<include
android:id="@+id/toolbar"
layout="@layout/toolbar_main"
/>
<FrameLayout
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="match_parent">
</FrameLayout>
</LinearLayout>
<android.support.design.widget.NavigationView
android:id="@+id/navigation_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="start"
app:headerLayout="@layout/header_navbar"
app:menu="@menu/action_navbar" />
<fragment
android:id="@+id/location_drawer"
android:name="com.company.app.LocationDrawerFragment"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_gravity="end" />
</android.support.v4.widget.DrawerLayout>
我在所有项目中使用的 proguard.project.txt 文件
-keepattributes Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,*Annotation*,EnclosingMethod
-dontobfuscate
-dontoptimize
-allowaccessmodification
-repackageclasses ''
-keep class com.company.** { *; }
-keep class android.support.v4.app.** { *; }
-keep interface android.support.v4.app.** { *; }
-keep class android.support.v7.app.** { *; }
-keep interface android.support.v7.app.** { *; }
-keep class android.support.v13.app.** { *; }
-keep interface android.support.v13.app.** { *; }
-keep class android.support.design.** { *; }
-keep class android.support.design.** { *; }
最佳答案
NavigationMenuView 扩展了 RecyclerView。我将 recyclerview 项目添加到我的工作区中,这为我解决了这个问题。
关于android.support.design.widget.NavigationView 膨胀问题(目标 api 23,最小 api 10),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33860084/
我收到多行错误,指出它有重复的类 Duplicate class android.support.v4.accessibilityservice.AccessibilityServiceInfoCom
我的项目昨天运行良好,今天却出现以下错误。请帮忙。 出了什么问题:无法解析配置“:app:debugCompileClasspath”的所有文件。 Could not find support-v4.
错误:配置项目“:app”时出现问题。 Could not find support-v4.jar (com.android.support:support-v4:24.0.0). Searched
我正在使用 react-native-webrtc 运行示例应用程序模块。我正在尝试在 android 中运行该应用程序,但出现这样的错误... * What went wrong: A probl
错误:配置项目“:app”时出现问题。 Could not find support-v4.jar (com.android.support:support-v4:24.0.0). Searched
我克隆了我的项目并使用 Android studio 打开,但构建失败并出现以下错误并且同一个项目在其他项目上运行良好。 出了什么问题:无法解析配置“:app:flavorUnsignedReleas
我正在运行示例应用程序......我正在使用 this模块.....但是我收到这样的错误... FAILURE: Build failed with an exception. * What went
我有一个 Ionic 项目,在升级到 OSx Mojave 后,出于某种原因不再构建。 该项目基于 Ionic 3 构建。 我有 Cordova CLI 7.0.0 当我运行时 ionic cordo
我有一个 Ionic 项目,在升级到 OSx Mojave 后,出于某种原因不再构建。 该项目基于 Ionic 3 构建。 我有 Cordova CLI 7.0.0 当我运行时 ionic cordo
添加 Android 平台(ionic cordova platform add android)后,我构建了我的 Ionic 项目(ionic cordova build android),但出现错
这个问题在这里已经有了答案: Manifest merger failed : Attribute application@appComponentFactory - Androidx (14 个答
关于我的 Gradle 文件中的以下“complie”: dependencies { compile 'com.android.support:support-v4:25.3.1' }
有些困惑。 我想更频繁地使用@supports 但是...我不关心浏览器如何看待它。希望您能说清楚,如果可以的话谢谢您。 如果浏览器本身不理解@supports,它如何计算@support 'not'
我刚刚升级到 Dart 2 和最新版本的 Flutter,现在我无法构建我的应用程序。我在互联网上环顾四周,但仍然不明白为什么会发生这种情况。 我得到的错误是: FAILURE: Build fail
我正在学习 Firebase,但由于以下错误而陷入困境: Error:Failed to resolve: com.android.support:customtabs:25.4.0 Error:Fa
我在构建本周时出于某种原因尝试使用Cordova进行项目时遇到问题: cordova build android gradle获取com.android.support:support alpha而不
对应的androidx是什么com.android.support:support-compat 的图书馆实现push notifications ? 他们说here它是 androidx 的一部分,
我正在尝试为我的应用设置插桩单元测试。并且我已根据以下开发者站点链接添加了依赖项。 https://developer.android.com/training/testing/unit-testin
当我想使用 Proguard 规则生成签名的 APK(发布)时,我收到了以下错误消息: Cannot find a version of 'com.android.support:support-an
这个问题在这里已经有了答案: Failed to resolve: com.android.support:appcompat-v7:26.0.0 (14 个答案) Failed to resolv
我是一名优秀的程序员,十分优秀!