gpt4 book ai didi

java - 如何以编程方式更改工具栏样式?当我尝试更改弹出菜单而不是工具栏时

转载 作者:行者123 更新时间:2023-12-05 05:35:44 24 4
gpt4 key购买 nike

我的应用程序有一个自定义工具栏,但在其中一项 Activity 中,我想以编程方式更改工具栏的样式。这是我想以编程方式应用的工具栏样式。

<style name="toolbarStyle" parent="ThemeOverlay.AppCompat.Dark">
<item name="android:background">@color/teal_200</item>
<item name="colorAccent">@android:color/white</item>
</style>

我使用这段代码以编程方式更改工具栏样式

toolbar.getContext().setTheme(R.style.toolbarStyle);

问题是,弹出主题发生了变化,而不是工具栏。

如何解决?

最佳答案

使用这段代码:

toolbar.getContext().setTheme(R.style.toolbarStyle);

设置整个 Activity 的主题,因为您已经在 ActivityContext< 上调用了 setTheme()/.

主题旨在用于整个应用程序,而不仅仅是用于单个 UI 元素。您只想使用样式来设置这个 UI 元素的样式。

如果您有自定义工具栏,那么您应该只在自定义工具栏上创建方法来调整这些样式并从您的 Activity 调用这些方法。

关于java - 如何以编程方式更改工具栏样式?当我尝试更改弹出菜单而不是工具栏时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73425303/

24 4 0