【问题标题】:Is ViewGroup with id android.R.id.content always FrameLayout?id 为 android.R.id.content 的 ViewGroup 是否总是 FrameLayout?
【发布时间】:2016-12-26 08:23:26
【问题描述】:

在我的活动中,我通过代码获得了根视图:

ViewGroup root = findViewById(android.R.id.content);

调试器告诉我root 变量是FrameLayout 的实例。 我的问题是:“Android 向我保证 root 在所有设备和所有 api 版本上始终是 Framelayout?”

【问题讨论】:

  • 为什么要把它转换成FrameLayout
  • 我想创建一个通用代码来为任何活动设置进度条。我想使用该 FrameLayout 将加载程序放入活动中,覆盖所有其他视图
  • 所以创建一个基础Activity 并覆盖它的setContentView 方法,然后让您的所有活动扩展该基础
  • 覆盖setContentView方法的代码应该是什么?
  • super.setContentView(newRootViewWithProgressBarAndYourOriginalView);

标签: android view android-framelayout


【解决方案1】:

我会相信 android.R.id.content 将是 ViewGroup 类型,但不是 FrameLayout 或任何其他特定类型。我检查了 AppCompatActivity 和简单的 Activity,它们返回不同类型的 ViewGroup。

【讨论】:

    猜你喜欢
    • 2017-10-16
    • 2021-06-25
    • 1970-01-01
    • 2013-07-28
    • 1970-01-01
    • 1970-01-01
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多