您的位置:首页 > 其它

在Activity中刷新Fragment

2016-04-20 00:00 141 查看
摘要: 在Activity中刷新Fragment。

本篇博客记录的是在一个主Activity中嵌套了一个Fragment,如图


然后执行完发送后,底部的Fragment内容会清空,我的方法可能会有些笨,但还是给大家一个借鉴。

思路:发送完消息后清空底部GridView的填充数据,然后刷新当前的Activity,然后就ko了。(这里有一个回调)

代码供上:

在Activity里面写一个接口,然后Fragment实现

public class Activity{

public interface refushFrag{

public void refush();

}

//发送消息事件

Thread thread=new Thread(new Runnable() {
@Override
public void run() {
sendMsg(content, "1");
String path = upperYun();
if(path!=null){
showPostPaperPic();
}
refresh();        //刷新当前的Activity
TakePicFragment.picList.clear();    //清空Fragment填充的list

File sd=Environment.getExternalStorageDirectory();
clearPic(sd.getPath()+"/pics");
}
});
thread.start();


public void refresh() {
finish();
Intent intent = new Intent(ChatActivity.this, ChatActivity.class);
intent.putExtra("userName", userName);
intent.putExtra("fromUser", fromUser);
startActivity(intent);
}


下面就是Fragment里面了,这个是实现了Activity中的接口

@Override
public void refush() {
adapter.notifyDataSetChanged();
}


这里调用我是在onCreateView中调用的

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_pic, container, false);

gridView = (GridView) view.findViewById(R.id.gridView1);

adapter = new PicAdapter(getActivity(), picList);
gridView.setAdapter(adapter);
if(view!=null){
refush();
}
return view;
}


好了,这样子就ko了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: