Как «автоматически изменить» цвет строки состояния в Android, как FB Messenger? - PullRequest
0 голосов
/ 11 мая 2019

Я вижу, что мой текст строки состояния имеет белый цвет, но когда я открываю FB Messenger, цвет меняется на черный. как я могу это сделать?

До открытия Messenger

Before Image

При открытии Messenger

After Image

Это мой код

 @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {

            getWindow().addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);
            getWindow().setStatusBarColor(ContextCompat.getColor(this, R.color.white));

        }


        initViews();



    }


Ответы [ 2 ]

0 голосов
/ 11 мая 2019
 @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_home);

    if(getWindow()!=null){
        getWindow().setStatusBarColor(ContextCompat.getColor(this, R.color.color_amber));
    }
}

// окончательный результат
enter image description here

просто создайте пример проекта и используйте этот код для проверки

0 голосов
/ 11 мая 2019

Здравствуйте, вы можете сделать это динамически в своей деятельности

Вы можете вызвать этот блок кода в onCreate

   if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {

        window.addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS);

        window.setStatusBarColor(ContextCompat.getColor(this, resourceId));

 }

resourceId - это ваш идентификатор цвета, например R.color.red

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...