2016-03-28 14 views
0

私は2種類のアクティビティを作成したいと思います。APIにツールバーが表示されない<21

値/ themes.xml

<resources> 

<style name="My.Login" parent="Theme.AppCompat.Light.NoActionBar"> 
    <item name="android:textColorHint">@android:color/white</item> 
</style> 

<style name="My.Login.ScrollView"> 
    <item name="android:background">@color/primary</item> 
</style> 

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
</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" /> 
</resources> 

は私のマニフェストは、私は、ルート要素使用の主な活動でandroid:theme="@style/AppTheme"

を持っている:私はルート要素に使用するログインアクティビティにandroid:theme="@style/AppTheme" app:popupTheme="@style/ActionBarPopupThemeOverlay"

app:theme="@style/My.Login" style="@style/My.Login.ScrollView"

すべてのアクティビティクラスはAppCompatActivityまで拡張されています。

API> = 21でアプリを実行しているときは大丈夫ですが、APIで< 21ツールバーの場所に空白があります。

答えて

0

あなたはそれを使用する必要があります。

ActionBar actionBar = getActionBar(); 
actionBar.hide(); 

をあなたの活動ののonCreate()メソッドでアクションバーを非表示にします。ところで は、あなたは、ステータスバーを非表示にする必要があり:

if (Build.VERSION.SDK_INT < 16) { 
     getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, 
       WindowManager.LayoutParams.FLAG_FULLSCREEN); 
} else { 
     View decorView = getWindow().getDecorView(); 
     decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN); 
} 

あなたはそのことについてhereを見つけることができます。

+0

私はactionBarを非表示にしようとしています(getSupportActionBarメソッドを使用)。 しかし、基本的な問題は、ツールバーの場所にあるメインアクティビティの空きスペースです。 – Velikodniy

関連する問題