【发布时间】:2015-08-21 17:38:36
【问题描述】:
我想做的是使用这里提到的新的 android 支持设计库:http://android-developers.blogspot.com/2015/05/android-design-support-library.html。
我尝试在我的 xml 布局中使用浮动操作按钮,如下所示(这是以下错误的来源):
<android.support.design.widget.FloatingActionButton
android:id="@+id/fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@+id/adview"
android:layout_marginTop="500dp" />
当我的应用程序启动时,这是错误:
06-06 20:56:43.186 6405-6405/com.nick.app E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.nick.app, PID: 6405
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.nick.app/com.nick.app.MainActivity}: android.view.InflateException: Binary XML file line #7: Error inflating class android.support.design.widget.FloatingActionButton
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2306)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2366)
at android.app.ActivityThread.access$800(ActivityThread.java:149)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1284)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5290)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:908)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:703)
Caused by: android.view.InflateException: Binary XML file line #7: Error inflating class android.support.design.widget.FloatingActionButton
at android.view.LayoutInflater.createView(LayoutInflater.java:633)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:743)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:806)
at android.view.LayoutInflater.inflate(LayoutInflater.java:504)
at android.view.LayoutInflater.inflate(LayoutInflater.java:414)
at android.view.LayoutInflater.inflate(LayoutInflater.java:365)
at com.android.internal.policy.impl.PhoneWindow.setContentView(PhoneWindow.java:401)
at android.app.Activity.setContentView(Activity.java:2197)
at com.nick.app.MainActivity.onCreate(MainActivity.java:94)
at android.app.Activity.performCreate(Activity.java:6020)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2259)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2366)
at android.app.ActivityThread.access$800(ActivityThread.java:149)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1284)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5290)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:908)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:703)
在我的应用程序模块的build.gradle 文件中,我根据需要有compile 'com.android.support:design:22.2.0'。此外,build.gradle 文件中的其他相关部分:
compileSdkVersion 21
buildToolsVersion "21.1.1"
defaultConfig {
...
minSdkVersion 16
targetSdkVersion 21
.....
我还应该注意,当我转到项目结构->依赖项并尝试添加库依赖项时,我在搜索时找不到“com.android.support:design:22.2.0”(我不确定这是否除了在 build.gradle 文件中添加依赖外,还需要)。
最后,在我的 SDK 管理器中,我已确认“Android Support Repository”和“Android Support Library”分别在版本 15 和 22.2 上是最新的。
还有什么我可以尝试的建议吗?
我找到了这个答案:https://stackoverflow.com/a/30557995/1489990 并尝试了解决方案,但它并没有解决我的问题。
【问题讨论】:
标签: android android-studio android-support-library