Как убрать разделительную линию / тень между строкой состояния и основным экраном? - PullRequest
4 голосов
/ 17 января 2011

В моем приложении я хотел бы сохранить строку состояния, но сделать ее фон таким же, как на главном экране.

Поэтому я создал собственную тему для установки фона приложения:

<resources>
  <style name="Theme.Shelves" parent="android:Theme">
    <item name="android:windowBackground">@drawable/background_shelf</item>
    <item name="android:windowNoTitle">true</item>
  </style>
</resources>

Затем укажите это в манифесте:

 <application android:icon="@drawable/icon" 
              android:theme="@style/Theme.Shelves"
              android:label="@string/app_name">

    <activity android:name=".HelloWorld"
              android:label="@string/app_name">

И получите это:

Снимок экрана 2

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

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    TextView tv = new TextView(this);
    tv.setText("Hello World");
    setContentView(tv);
    tv.setPadding(0,0,0,0);
}

Пожалуйста, дайте мне знать, если у вас есть идеи по этому поводу.Благодаря.

1 Ответ

9 голосов
/ 17 января 2011

Судя по вашему скриншоту, 'seperator' на самом деле является тенью строки состояния.Я собираюсь из памяти здесь, но я думаю, что вы можете отключить его с помощью:

<item name="android:windowContentOverlay">@null</item>

Извинения, если имя атрибута немного неправильно, как я говорю, идет из памяти, но я думаю, что это правильно.

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