从另一个片段更新片段数据?

时间:2014-03-03 19:10:28

标签: android android-fragments broadcastreceiver fragment android-listfragment

在我的短信应用中,我有多个留言联系人。我有一个主要活动和两个片段,outerFragmentinnerFragment。我在outerfragment列表中显示的每个联系人的最新消息。点击outerfragmrnt的每一行,我正在打开innerfragment,其中包含所有个人联系信息。当我从innerfragment删除最新消息时,它正在删除但是它没有更新outerfragment。当我从outerfragment删除最新消息时,如何更新innerfragment中的最新消息。如何在android中实现这一点?

1 个答案:

答案 0 :(得分:1)

您可以将侦听器用于此目的。这可以通过以下方式实现

创建一个界面,如下所示:

public interface myListener {

public void updateView(boolean success, Object message);
 }

让你的外部片段实现这个监听器并覆盖未实现的方法:

public class OuterFragment extends Fragment implements myListener{

onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState){

InnerFragment innerfrag = new InnerFragment();

innerFrag.setmyListener(this);

 }
updateView(boolean success,Object message){

   // your code here
   }

}

在InnerFragment

中创建setmyListener()方法
InnerFragment extends Fragment {

  myListener listener;    

  public void setmyListener(myListener listener){

  this.listener = listener   

 }

}

当你想要更新outerFragment

时,通过调用此方法从innerFragment回调到外部
listener.updateView(success,message);