Google Play Services 6.5.87 vs 7.3.0 - 布局问题?

时间:2015-05-08 18:08:03

标签: android android-fragments google-play-services

好的,所以这里有一个奇怪的...我有一堆片段的活动。我有一些代码需要访问片段视图。我使用getView()方法获取片段视图。突然间,我的代码在几次提交之间停止了工作。在一个非常痛苦的调试过程之后,我将问题缩小到了Google Play服务的版本,在其中一个提交中将其从6.5.87更改为7.3。检查布局层次结构我可以看到当我的代码工作时(即getView()返回我期望的布局,在我的容器下有一个额外的FrameLayout,所以层次结构如下所示:

<...stuff...>
  - FrameLayout (resource-id com.myapp:id/container)
    - FrameLayout (resource-id )
      - LinearLayout (resource-id )
        - LinearLayout (top level layout in my fragment)

使用7.3服务时,这看起来像:

<...stuff...>
  - FrameLayout (resource-id com.myapp:id/container)
    - LinearLayout (resource-id ) 
      - LinearLayout (top level layout in my fragment)

任何想法为什么首先有一个FrameLayout以及它在新的PlayServices中的位置?

1 个答案:

答案 0 :(得分:2)

我的猜测是早期版本的Google Play服务为自己的特殊需求注入了额外的FrameLayout,现在已停止这样做了。

也许是因为他们的“请升级Google Play服务”对话框,谁知道。

由于Google Play服务是封闭源代码,因此很难明确回答这个问题。我遇到了同样的问题:我有代码依赖于Fragement getView()返回一个FrameLayout,当我从使用Google Play Services 6.1.x转到7.5.x时,这个问题就破裂了