【问题标题】:actionbarsherlock fragments: view not completely loaded in onActivityCreated() or onStart()actionbarsherlock 片段:视图未在 onActivityCreated() 或 onStart() 中完全加载
【发布时间】:2013-10-14 04:18:46
【问题描述】:

在 Activity.onStart() 和 Fragment1.onActivityCreated() 和 Fragment1.onStart() 方法中,我的完整活动视图布局未完全加载。

在 onActivityCreated() 中没有加载任何视图(我有几个片段,每个片段最多包含 20 个元素)。 findViewById(R.id.somefield) 返回 null。

在 onStart() 中,第一个片段视图可访问,但其他片段均不可访问。

如果我根本不尝试在这些方法中访问任何视图组件,只是让应用程序启动,然后尝试在 onclick 侦听器中访问视图,那么所有片段上的整个视图都可以访问(我使用 setOffscreenPageLimit) .

记录的活动片段生命周期似乎有些奇怪。

我注意到其他一些人发布了关于在使用片段时访问视图组件时遇到的问题。

有什么方法可以测试整个视图何时完全加载?

更新:将视图访问移动到最远索引片段中的 onActivityCreated() 似乎正在工作。

【问题讨论】:

    标签: android android-fragments actionbarsherlock


    【解决方案1】:

    这里是解释为什么我必须将访问移动到最后一个片段的 onActivityCreated 的日志:

    V/MyApp( 7269): Activity: onCreate:
    V/MyApp( 7269): Activity: onStart:
    V/MyApp( 7269): Fragment1: onCreateView:
    V/MyApp( 7269): Fragment1: onActivityCreated:
    V/MyApp( 7269): Fragment1: onStart:
    V/MyApp( 7269): Fragment2: onCreateView:
    V/MyApp( 7269): Fragment2: onActivityCreated:
    V/MyApp( 7269): Fragment2: onStart:
    V/MyApp( 7269): Fragment3: onCreateView:
    V/MyApp( 7269): Fragment3: onActivityCreated:
    V/MyApp( 7269): Fragment3: onStart:
    V/MyApp( 7269): Fragment4: onCreateView:
    V/MyApp( 7269): Fragment4: onActivityCreated:
    V/MyApp( 7269): Fragment4: onStart:
    

    在调用最后一个片段生命周期方法之前,活动视图是不完整的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-24
      • 1970-01-01
      相关资源
      最近更新 更多