在状态更改后更新Fragment的UI的方法

时间:2013-08-08 14:59:52

标签: android android-fragments

我正在尝试重用相同的Fragment,只需在Fragment中交换一些实例变量。我的问题是我不能强制UI更新。我试过了:

detailFragment.setDetails(bundle);
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.replace(R.id.detailFragment, detailFragment);
ft.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_FADE);
ft.commit();

但它似乎没有对我的UI进行任何更改。在我创建一个新的DetailFragment()的同时,相同的代码工作正常并更改UI。你能帮忙吗?

2 个答案:

答案 0 :(得分:0)

据我了解,您希望更新片段中的“视图”。您可以获取视图并设置其新值。 EG:如果是文本视图,则只需设置新文本。

答案 1 :(得分:0)

你有detailFragment我假设你的片段类。

保留该类的实例

DetailFragment df = (DetailFragment)detailFragment;

在该类中创建一个公共方法

public void updateMyUi(){
    //do ui stuff
}

然后你所要做的就是打电话

df.updateMyUi();