我如何刷新Android Fragment / s内容onBack Press?

时间:2014-01-02 04:51:24

标签: android-fragments

我如何刷新片段/内容onBack Press?

FragmentManager back = getFragmentManager();
back.beginTransaction().replace(R.id.left, new ArticleFragment()).commit();
back.beginTransaction().replace(R.id.middle, new LocationFragment()).commit();

1 个答案:

答案 0 :(得分:0)

刷新片段的内容, 你可以保留对片段的引用,并在该片段中调用公共refresh()方法。 当您创建选项卡片段时, 与PupulareFragment一样,使用pupulareFragment实例变量来存储片段。因此它可以在onClick方法的刷新按钮中使用。

这样,您在刷新时不会替换/创建任何新片段。因此,在参加de article details活动之后回到tabActivity,可能会正常工作。

示例:

public class ArticleTabFragmentActivity extends FragmentActivity{
     private PopulareFragment populareFragment;
     private RecomandateFragment recomandateFragment;

     <the code...>

     private void bindView(){
              Button btn_refresh = (Button) findViewById(R.id.btn_refresh);

              btn_refresh.setOnClickListener(new View.OnClickListener() {

               public void onClick(View v) {
                    String current_tab = mTabHost.getCurrentTabTag(); 
                    if(current_tab.contains("POPULARE")){
                             populareFragment.refresh();
                    } 
                    else if(current_tab.contains("RECOMANDATE")){
                          recomandateFragment.refresh();
                    } 
              });
     }



   }

   public class PopulareFragment extends Fragment{  

     public void refresh(){
              <refresh the contents of the fragment>
     }

   }