我从支持Gingerbread切换,因为Play不再支持它。我现在可以停止使用支持类,并转向实际的支持类。除了getActionBar为null
@Style.AppTheme
)Activity
,而不是ActionBarActivity
或AppCompatActivity
requestWindowFeature(Window.FEATURE_ACTION_BAR);
之前,甚至在setContentView
super.onCreate
getActionBar
onCreate
中呼叫setContentView
styles.xml
<resources>
<!--
Base application theme, dependent on API level. This theme is replaced
by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
-->
<style name="AppBaseTheme" parent="Theme.AppCompat.Light">
<!--
Theme customizations available in newer API levels can go in
res/values-vXX/styles.xml, while customizations related to
backward-compatibility can go here.
-->
</style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
</style>
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="AppTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar"/>
<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light"/>
<style name="mp_name">
<item name="android:textStyle">bold</item>
<item name="android:textSize">20sp</item>
</style>
<style name="search_date">
<item name="android:textStyle">italic</item>
<item name="android:textSize">14sp</item>
</style>
<style name="search_details">
<item name="android:textStyle">normal</item>
<item name="android:textSize">10sp</item>
</style>
</resources>
styles.xml(v11)
<resources>
<!--
Base application theme for API 11+. This theme completely replaces
AppBaseTheme from res/values/styles.xml on API 11+ devices.
-->
<style name="AppBaseTheme" parent="Theme.AppCompat.Light">
<!-- API 11 theme customizations can go here. -->
</style>
</resources>
styles.xml(v14)
<resources>
<!--
Base application theme for API 14+. This theme completely replaces
AppBaseTheme from BOTH res/values/styles.xml and
res/values-v11/styles.xml on API 14+ devices.
-->
<style name="AppBaseTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- API 14 theme customizations can go here. -->
</style>
</resources>
styles.xml(v21)
<resources>
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:statusBarColor">@android:color/transparent</item>
</style>
</resources>
答案 0 :(得分:1)
你试过getSupportActionBar()吗?当我遇到类似问题时,这对我有用。
您可能还想查看此主题的其中一个答案: getActionBar returns null
答案 1 :(得分:0)
原因是<item name="windowActionBar">false</item>
。删除它并尝试。
无需使用Theme.AppCompat
,因为您没有继承AppCompatActivity
。
答案 2 :(得分:-1)
检查您是否在应用程序中添加了正确的主题
android:icon="@drawable/app_icon"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".activity.SplashScreen"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>