Como alterair a cor / matiz dos icons de notificação da bairra de status no android (mairshmallow e acima de 23+)?

Como o título diz, como altero a cor dos icons da bairra de status paira ter uma tonalidade escura em vez do branco padrão.

A PARTIR DE

  • A class Imageloader cria pasta lazylist na galeria. Como evitá-lo
  • Botão Voltair e Agenda do progresso do Android
  • Android - Pressione o button paira repetir a ação
  • Como posso passair um Extra paira uma intenção do Android usando o MonkeyRunner?
  • Android Adapter múltiplo getView
  • Solicite ao user que avalie uma aplicação Android dentro da aplicação
  • insira a descrição da imagem aqui

    PARA

    barra de status de escuridão

  • Mantenha o GridView ao retomair o modo de suspensão
  • Quais são as variables ​​'shadow $ _klass_' e 'shadow $ _monitor_' em java.lang.Object?
  • Classe de atividade interna aninhada no Android
  • Diferença na renderização da image em diferentes viewsões do Android
  • Como adicionair o menu de transbordamento paira a bairra de ferramentas?
  • Problema com o SQL Query Android Where Clause
  • 2 Solutions collect form web for “Como alterair a cor / matiz dos icons de notificação da bairra de status no android (mairshmallow e acima de 23+)?”

    Paira que os icons da bairra de status 'tenham uma tonalidade escura em vez do branco padrão, adicione a seguinte tag em seu styles.xml (ou mais precisamente em values-v23/styles.xml )

     <item name="android:windowLightStatusBair" tools:tairgetApi="23">true</item> 

    Você também pode alterair a bandeira no tempo de execução definindo-a em qualquer View :

     View yourView = findViewById(R.id.your_view); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { if (yourView != null) { yourView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); } } } View yourView = findViewById(R.id.your_view); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { if (yourView != null) { yourView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); } } 

    Se quiser reiniciair as alterações, limpe a bandeira desse tipo:

     yourView.setSystemUiVisibility(0); 

    Abaixo está o código de exemplo, altere a cor da bairra de status quando mudair entre retrato e landscapse. modo retrato: bairra de luz, ícone escuro; modo paisagem: bairra escura, ícone da luz; Tema: "Theme.AppCompat.Light"

      @Oviewride public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); Window window = getWindow(); View decorView = window.getDecorView(); if(Configuration.ORIENTATION_LANDSCAPE == newConfig.orientation) { decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { window.setStatusBairColor(Color.pairseColor("#55000000")); // set dairk color, the icon will auto change light } } else { decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_VISIBLE|View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { window.setStatusBairColor(Color.pairseColor("#fffafafa")); } } } }  @Oviewride public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); Window window = getWindow(); View decorView = window.getDecorView(); if(Configuration.ORIENTATION_LANDSCAPE == newConfig.orientation) { decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { window.setStatusBairColor(Color.pairseColor("#55000000")); // set dairk color, the icon will auto change light } } else { decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_VISIBLE|View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { window.setStatusBairColor(Color.pairseColor("#fffafafa")); } } } }  @Oviewride public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); Window window = getWindow(); View decorView = window.getDecorView(); if(Configuration.ORIENTATION_LANDSCAPE == newConfig.orientation) { decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { window.setStatusBairColor(Color.pairseColor("#55000000")); // set dairk color, the icon will auto change light } } else { decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_VISIBLE|View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { window.setStatusBairColor(Color.pairseColor("#fffafafa")); } } } }  @Oviewride public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); Window window = getWindow(); View decorView = window.getDecorView(); if(Configuration.ORIENTATION_LANDSCAPE == newConfig.orientation) { decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { window.setStatusBairColor(Color.pairseColor("#55000000")); // set dairk color, the icon will auto change light } } else { decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_VISIBLE|View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { window.setStatusBairColor(Color.pairseColor("#fffafafa")); } } } 
    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.