Как исключить некоторые части моего пользовательского интерфейса из общей темы приложения? - PullRequest
1 голос
/ 28 июня 2010

В моем приложении есть тема, которая определяет собственный цвет фона. Это зеленый цвет, который вы видите над вкладкой.

В некоторых видах деятельности я использую Tabhost для своего макета. Теперь я получаю что-то вроде этого:

альтернативный текст http://janusz.de/~janusz/tabHostStyle.png

У моего tabwidget черный фон, и я доволен этим, но значки в tabwidget прозрачны, и это приводит к тому, что они показывают зеленый фон, определенный в моем стиле.

Как я могу определить tabhost как не стилизованный и сделать так, чтобы прозрачные значки отображали вкладку с измененным изображением вместо сплошного фона?

Ответы [ 2 ]

1 голос
/ 29 июня 2010

Я нашел решение своей проблемы.

Я изменил свой стиль с

  <item name="android:background">@color/light_green</item>
</style>

до:

  <item name="android:windowBackground">@color/light_green</item>
</style>

Это заставляет окно иметь правильный фон, но оно не переопределяет все фоны в неопределенных видах.

0 голосов
/ 29 июня 2010

Вы действительно хотите удалить все стили или только фон?Если вам просто нужно изменить фон, отредактируйте элементы TabHost в XML-файлах макета, чтобы установить фон.

    <TabHost
        ...
        android:background="@color/mytabhostbackround"
        ...>
            ...
    </TabHost>

Кроме того, вы можете установить атрибут стиля TabHost или даже установить другую темудля деятельности.

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