【问题标题】:SetTheme does not work when using viewBinding使用 viewBinding 时 SetTheme 不起作用
【发布时间】:2021-11-18 09:11:27
【问题描述】:

我的应用中有两个主题(深色和浅色模式),我可以毫无问题地更改主题。 但是,由于我使用了 viewBinding,所以 setTheme() 函数不起作用,我无法再更改活动的主题。 有谁知道问题出在哪里?

这是我的旧代码(有效)

setTheme(getAppTheme());
setContentView(R.layout.my_layout);

还有新代码(不起作用)

setTheme(getAppTheme());
setContentView(binding.getRoot());

感谢您抽出宝贵时间阅读,并为我的英语不好感到抱歉:)

【问题讨论】:

  • 你是如何初始化你的绑定变量的?

标签: android android-theme android-styles android-viewbinding android-attributes


【解决方案1】:

您必须在设置主题之前初始化绑定变量。设置主题后,您必须初始化活动绑定,才能正常工作。

setTheme(getAppTheme());
binding = ActivityMainBinding.inflate(layoutInflater)
setContentView(binding.getRoot());

【讨论】:

  • 我在设置主题后初始化了绑定变量,问题解决了。非常感谢您快速而正确的回答。
猜你喜欢
  • 2021-09-10
  • 2021-08-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-29
  • 1970-01-01
相关资源
最近更新 更多