扩展风格和主题的混乱

发布于 2024-12-08 17:23:34 字数 652 浏览 1 评论 0原文

在我的清单中,我曾经有过类似的东西

<activity android:name=".MyActivity"
     android:label="@string/app_name"
        name="Theme.NoTitleBar"...

,而且效果很好,我的意思是标题栏没有显示。

但现在我想自定义主题(我想扩展默认的android主题) 我创建了这个主题,

<style name="Theme.NoTitleBar.new_skin" parent="android:Theme">
        <item name="text_body_read">@style/text_body_read</item>
        <item name="text_body_unread">@style/text_body_unread</item>
    </style>

然后在清单中设置了 name="Theme.NoTitleBar.new_skin",但标题栏仍然显示。

如何隐藏标题栏并仍然保留新的自定义主题?

还有一个问题是添加点“.”意味着在使用样式时进行扩展?

In my manifest I used to have something like this

<activity android:name=".MyActivity"
     android:label="@string/app_name"
        name="Theme.NoTitleBar"...

and it worked great, I mean the title bar was not shown.

But now I want to customize the theme (I want to extend the default android theme)
and I created this theme

<style name="Theme.NoTitleBar.new_skin" parent="android:Theme">
        <item name="text_body_read">@style/text_body_read</item>
        <item name="text_body_unread">@style/text_body_unread</item>
    </style>

then in the manifest I set name="Theme.NoTitleBar.new_skin", but the title bar is still shown.

how can I hide the title bar and still have my new custom theme ?

and one more question does adding dots '.' means extending when working with styles ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

东风软 2024-12-15 17:23:34

在你的 mainfest 中,你应该这样写:

<activity android:name=".MyActivity"
     android:label="@string/app_name"
        name="MyTheme"...

在你的 styles.xml 中,你应该这样写:

<style name="MyTheme" parent="android:Theme.NoTitleBar">
        <item name="text_body_read">@style/text_body_read</item>
        <item name="text_body_unread">@style/text_body_unread</item>
 </style>

点 (.) 并不意味着扩展。这意味着引用主题中的某个元素(列表视图、文本视图等)。例如,您将需要:

<style name="MyTheme.Widget.ListView" parent="@android:style/Widget.ListView.White">
</style>

定义列表视图的样式。

in your mainfest you should write something like:

<activity android:name=".MyActivity"
     android:label="@string/app_name"
        name="MyTheme"...

In your styles.xml you should write something like:

<style name="MyTheme" parent="android:Theme.NoTitleBar">
        <item name="text_body_read">@style/text_body_read</item>
        <item name="text_body_unread">@style/text_body_unread</item>
 </style>

Dot (.) doesn't mean extending. It means referencing a certain element (listview, textview etc.) in your theme. For example, you would have:

<style name="MyTheme.Widget.ListView" parent="@android:style/Widget.ListView.White">
</style>

to define style of your listview.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文