Android 安卓:工具栏“setTitletextAppearance”不';行不通

Android 安卓:工具栏“setTitletextAppearance”不';行不通,android,android-fragments,toolbar,Android,Android Fragments,Toolbar,我有多个父片段和子片段,父片段的标题文本样式不同于子片段。 为了实现这一点,我对父片段的onResume()方法调用以下方法: toolbar.setTitleTextAppearance(context, R.style.ParentToolbarTitleTextStyle) 在onPause()和onStop()(仅用于测试)上,我尝试应用通用标题文本样式,如下所示: override fun onPause() { super.onPause() toolbar.

我有多个父片段和子片段,父片段的标题文本样式不同于子片段。 为了实现这一点,我对父片段的
onResume()
方法调用以下方法:

toolbar.setTitleTextAppearance(context, R.style.ParentToolbarTitleTextStyle)
onPause()
onStop()
(仅用于测试)上,我尝试应用通用标题文本样式,如下所示:

override fun onPause() {
     super.onPause()

     toolbar.setTitleTextAppearance(context, R.style.GenericToolbarTitleTextStyle);
}

override fun onStop() {
     super.onStop()

     toolbar.setTitleTextAppearance(context, R.style.GenericToolbarTitleTextStyle);
}
但是,当我转到子片段时,在resume上应用的样式仍然保留

我已经交叉验证了
parentToolbarTitleteTextStyle
genericToolBartitleteTextStyle
的大小和颜色都不同


我不知道我错过了什么。如果有任何建议,我将不胜感激。

更多的细节将有助于回答这个问题。 因此,我从您的问题中了解到,您总共有两个标题栏,就像活动和片段一样。因此,可以归结为您试图设置标题栏的上下文,以及片段如何与父活动相关

以下是一些建议,你可以尝试一下。希望对你的建议有所帮助

1.请检查如何通过活动、碎片安装或 视图模型模式。因为fragment和Acitvity是Android架构组件的一部分,所以工具栏问题可以通过使用ViewModel解决

  • 还要检查是否已将材料和Jectpack组件导入到gradle文件中

  • 更多的细节将有助于回答这个问题。 因此,我从您的问题中了解到,您总共有两个标题栏,就像活动和片段一样。因此,可以归结为您试图设置标题栏的上下文,以及片段如何与父活动相关

    以下是一些建议,你可以尝试一下。希望对你的建议有所帮助

    1.请检查如何通过活动、碎片安装或 视图模型模式。因为fragment和Acitvity是Android架构组件的一部分,所以工具栏问题可以通过使用ViewModel解决

  • 还要检查是否已将材料和Jectpack组件导入到gradle文件中

  • 我明白了。是我的代码造成了混乱,并检查了返回false的标志。我在这里真诚地对所有评论和答案投了赞成票。谢谢大家抽出时间来解决这个问题。是我的代码造成了混乱,并检查了返回false的标志。我在这里真诚地对所有评论和答案投了赞成票。谢谢大家抽出时间

    谢谢你们的评论。父片段和子片段都是同一活动的一部分。另外,默认工具栏样式应用于活动级别。@Akshay,而不是直接使用{toolbar.setTitleTextAppearance}。尝试使用runOnUiThread方法使用它们。因为外观部分总是发生在UI线程上,所以它可能会解决您的问题。谢谢您的评论。父片段和子片段都是同一活动的一部分。另外,默认工具栏样式应用于活动级别。@Akshay,而不是直接使用{toolbar.setTitleTextAppearance}。尝试使用runOnUiThread方法使用它们。因为外观部分总是发生在UI线程上,所以它可能会解决您的问题。发布样式结果表明它不是样式,而是标志问题。感谢@GabrieleMariotti为您抽出时间!发布你的风格原来这不是风格,而是旗帜问题。感谢@GabrieleMariotti为您抽出时间!