строка состояния мешает макету в Android

Я хочу, чтобы мой макет начинался под строкой состояния и расширялся до конца экрана. Панель навигации должна быть скрыта.

Для этого я использовал эту тему:

<style name="AppTheme.NoActionbarThemeDefaultStatusColor" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowActionBar">false</item>
</style

за мою деятельность. И я также использую приведенный ниже код в методе oncreate моей деятельности.

window.decorView.systemUiVisibility = (View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                    or View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                    or View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
                    or View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY
                    or View.SYSTEM_UI_FLAG_LOW_PROFILE)

Все в порядке, строка состояния есть, панели навигации нет. Но верхняя часть макета скрыта под строкой состояния. Я хочу, чтобы макет начинался после строки состояния. Но не уверен, как это сделать.


person Pardeep Kumar    schedule 18.07.2018    source источник
comment
NoActionBar не работает?   -  person Shahzad Afridi    schedule 18.07.2018
comment
вы проверили этот ответ: stackoverflow.com/a/30489338/6672577   -  person Shahzad Afridi    schedule 18.07.2018
comment
Можете ли вы прикрепить скриншот вашего просмотра?   -  person Ankita    schedule 18.07.2018
comment
вы упомянули в своем вопросе, но верхняя часть макета скрыта под строкой состояния .................... Если вы хотите также отобразить свой макет в строке состояния, проверьте мой ответ .   -  person Shahzad Afridi    schedule 18.07.2018


Ответы (1)


Попробуйте этот код...

    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main2);
         if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP){
            getWindow().setStatusBarColor(Color.TRANSPARENT);
}
        }
person Shahzad Afridi    schedule 18.07.2018
comment
это покажет это правильно. Но проблема в том, что мой макет начинается с верхней части экрана, а не должен начинаться после строки состояния. В вашем решении будет отображаться перекрывающийся текст, но текст все равно будет начинаться с верхней части экрана. - person Pardeep Kumar; 18.07.2018