2017-01-23 21 views
0

私はこれについてすべての解決策を確認しましたが、私のケースではうまくいきませんでした。ステータスバーのテーマの色を変更できないandroid/xamarin

<style name="Base.Theme.DesignDemo" parent="Theme.AppCompat.Light.NoActionBar"> 
    <item name="colorPrimary">#2e662f</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">#4CAEE3</item> 
    </style> 

AndroidManifestでは:ステータスバーの色が変更されませんなぜ私が得ることができないスタイルで (それはデフォルトではグレーです)私は定義

<application android:label="App1" android:theme="@style/Theme.DesignDemo" android:icon="@drawable/icon"> 

を、活動I内部「このように呼び出すメートル:

[Activity(Label = "", Theme = "@style/Theme.DesignDemo",MainLauncher = true, Icon = "@drawable/icon")] 
01:

[Activity(Label = "", MainLauncher = true, Icon = "@drawable/icon")] 

また、私はこのような何かを試してみました

答えて

1

android:targetSdkVersionがAndroidManifest.xmlファイルに設定されていることを確認するか、必要に応じてコードを使用することができます。

あなたはXamarin Androidは、Javaから翻訳された次のコードでプログラム的にアプリのステータスバーの色変更することができます。

if (Build.VERSION.SdkInt >= BuildVersionCodes.Lollipop) 
{ 
    // clear FLAG_TRANSLUCENT_STATUS flag: 
    Window.ClearFlags(Android.Views.WindowManagerFlags.TranslucentStatus); 

    //Window.ClearFlags(WindowManager.Pa WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); 
    Window.AddFlags(Android.Views.WindowManagerFlags.DrawsSystemBarBackgrounds); 

    // finally change the color 
    Window.SetStatusBarColor(new Color(ContextCompat.GetColor(this, Resource.Color.colorPrimaryDark))); 
} 

は、あなたのテーマはTheme.AppCompatスタイルを使用していると、あなたの活動がAppCompatActivityから継承する必要があることを確認してください。このような

[Activity(Label = "Dialogs Demo", MainLauncher = true, Icon = "@mipmap/icon", Theme = "@style/AppTheme")] 
    public class MainActivity : AppCompatActivity 
    {} 

とサンプルスタイル:

<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar"> 
    <!-- Customize your theme here. --> 
    <item name="colorPrimary">@color/colorPrimary</item> 
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
    <item name="colorAccent">@color/colorAccent</item> 
</style> 
ですから、このようなものを持っている必要があります
関連する問題