在OnCreate之后初始化视图中的值的最佳实践

时间:2014-04-02 11:31:41

标签: android xml android-layout android-fragments

我在Android活动中为某些视图初始化某些值时遇到一些问题导致我能够获取视图,我必须等待活动布局以及片段布局要充气,直到我可以初始化视图值。我知道我可以在片段OnCreateView中初始化视图,但我想避免这种情况,而是在onCreates / onCreateView完成之后运行某种方法。

这有可能吗?修改/初始化视图的最佳做法是什么?

提前致谢

4 个答案:

答案 0 :(得分:0)

除非您有特殊情况,否则您不应偏离FragmentActivity的生命周期。 无论如何,如果需要调用方法,请查看this示例中的MainActivity类。它使用Handler来处理UI线程

答案 1 :(得分:0)

您可以使用onStart()onResume()方法执行此操作,这些方法在onCreate()之后调用,但也可以在停止或暂停活动后执行。

有关更详细的信息,请查看the Activity Documentation

您还应该尝试处理问题的格式,我不确定我是否正确理解了问题。

答案 2 :(得分:-1)

您可以使用here上提到的方式。它比较干净。

答案 3 :(得分:-2)

您将以下方法放入片段中。

  

public void initFragment(){//在这里做你需要的东西}

为片段创建对象后(例如下面给出的示例)

  

mFragmentManager = getSupportFragmentManager();         mIssDetailsListFragment =(IssDetailsListFragment)mFragmentManager                 .findFragmentById(R.id.fragment_outlet_list);

你调用方法 initFragment()(下面给出的示例代码)

  

mIssDetailsListFragment.initFragment()