android-getActionBar()在SDK更新到5.0后返回null

在我将 Android SDK更新到5.0版之后,getActionBar()方法开始返回null,导致我的应用程序在启动时崩溃.我对导致这种情况的原因一无所知,任何现有的Stackoverflow线程都无济于事.

这是我的清单:

<application
    android:name="App"
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/ActionBarTheme" >

styles.xml:

<style name="AppBaseTheme" parent="Theme.AppCompat.Light"></style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme"></style>
<style name="ListItemPadding">
    <item name="android:paddingTop">8dp</item>
    <item name="android:paddingRight">5dp</item>
    <item name="android:paddingBottom">8dp</item>
    <item name="android:paddingLeft">5dp</item>
</style>

的themes.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources xmlns:android="http://schemas.android.com/apk/res/android">

<!-- the theme applied to the application or activity -->
<style name="ActionBarTheme" parent="@style/Theme.AppCompat.Light.DarkActionBar">
    <item name="android:actionBarStyle">@style/ActionBar</item>
    <item name="android:actionOverflowButtonStyle">@style/OverflowButton</item>
    <!-- Support library compatibility -->
    <item name="actionBarStyle">@style/ActionBar</item>
    <item name="actionOverflowButtonStyle">@style/OverflowButton</item>
</style>

<style name="OverflowButton" parent="android:style/Widget.Holo.ActionButton.Overflow">
    <item name="android:src">@drawable/menu</item>
</style>

<!-- ActionBar styles -->
<style name="ActionBar" parent="@style/Widget.AppCompat.Light.ActionBar.solid.Inverse">
    <item name="android:background">@color/main</item>

    <!-- Support library compatibility -->
    <item name="background">@color/main</item>
</style>

</resources>

和我的gradle依赖项:

dependencies {
compile 'com.github.jenzz.undobar:library:1.1:api8Release@aar'
compile 'com.android.support:support-v4:21.0.0'
compile 'com.android.support:appcompat-v7:21.0.0'
compile 'com.loopj.android:android-async-http:1.4.5'
compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.3'
compile 'com.google.android.gms:play-services:6.1.+'
}

任何帮助是极大的赞赏!

解决方法

正如您在此处所做的那样,在使用ActionBaractivity和appcompat-v7时使用getSupportActionBar().

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...