本篇博客记录的是在一个主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了。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐