android - 为 fragment 设置主题

标签 android android-fragments android-theme

我正在尝试为 fragment 设置主题。

在 list 中设置主题不起作用:

android:theme="@android:style/Theme.Holo.Light"

通过查看以前的博客,似乎我必须使用 ContextThemeWrapper。任何人都可以向我推荐一个编码示例吗?我什么也找不到。

最佳答案

在 manifest 中设置 Theme 通常用于 Activity。

如果要为 Fragment 设置 Theme,在 Fragment 的 onGetLayoutInflater() 中添加下一段代码:

override fun onGetLayoutInflater(savedInstanceState: Bundle?): LayoutInflater {
    val inflater = super.onGetLayoutInflater(savedInstanceState)
    val contextThemeWrapper: Context = ContextThemeWrapper(requireContext(), R.style.yourCustomTheme)
    return inflater.cloneInContext(contextThemeWrapper)
}

关于android - 为 fragment 设置主题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9469174/

相关文章:

android - 附近的 Google Play 服务注册失败,有 TOO_MANY_PENDING_INTENTS 个

android - FragmentTabHost & Fragments - 如何在选项卡之间传递数据?

android - 为相同的小部件类型定义不同的主题样式

android - 如何使用 Holo.Light 主题,并在 pre-honeycomb 设备上回退到 'Light'?

android - 访问未配置。项目 608941808256 中未使用 YouTube Data API

Android:在创建时设置随机颜色背景

android - 如何从 Android 中的应用程序恢复以前运行的应用程序?

android - 弹出最后一个 fragment 时处理返回键

java - 检查 fragment 当前是否可见

java - 通过反射改变 colorPrimary 和 colorAccent