Android 返回到片段时重新加载listview

Android 返回到片段时重新加载listview,android,listview,android-listview,android-fragments,Android,Listview,Android Listview,Android Fragments,我有一个扩展了ActionBarActivity的类来处理我的片段 我正在创建一个片段:这个片段使用一些文本视图、编辑文本、一个按钮和一个列表视图来扩展布局。根据用户在编辑文本上插入的输入,在按下按钮后,将执行查询,并使用扩展阵列适配器的适配器填充列表视图 在该列表中,选择了一个新片段,并在提交事务之前添加了一个新片段。信息显示在新片段中,当用户按下后退按钮时,显示带有列表视图的片段。除未填充的列表视图外,所有项目均与以前一样显示 我有这个: @Override public v

我有一个扩展了
ActionBarActivity
的类来处理我的片段

我正在创建一个片段:这个片段使用一些
文本视图
编辑文本
、一个
按钮
和一个
列表视图
来扩展布局。根据用户在
编辑文本
上插入的输入,在按下
按钮
后,将执行查询,并使用扩展
阵列适配器
的适配器填充
列表视图

在该列表中,选择了一个新片段,并在提交事务之前添加了一个新片段。信息显示在新片段中,当用户按下后退按钮时,显示带有
列表视图的片段。除未填充的
列表视图
外,所有项目均与以前一样显示

我有这个:

    @Override
    public void onResume() {
        super.onResume();
        if (operation == 2) {
            if (search.listContent != null) {
                //search.inputQuery.setText("x");
                search.arrayListAdapter.notifyDataSetChanged();
                search.listContent.invalidateViews();
            }
        }
    }
我已尝试通知适配器已进行更改,并尝试
invalidateViews
,但未显示信息

如果我尝试调试
搜索
,我可以看到listview(
listcontent
)在那里,并且设置了
适配器
。我甚至可以看到适配器的内容,即以前在
列表视图中显示的数据

如何重新加载我的
列表视图

static ArrayList<String[]> allData = new ArrayList<String[]>();
...
bD.open();
Cursor query = null;
// perform query
query.moveToFirst();
for (int j = 0; j < query.getCount(); j++) {
    String[] fData = new String[]{"idNumber", "des", "source", "bd"};
    fData[0] = String.valueOf(query.getInt(0));
    fData[1] = query.getString(1);
    fData[2] = getSource(query.getInt(2), i + 1);
    fData[3] = String.valueOf(i + 1);
    allData.add(fData);
    query.moveToNext();
}
bD.close();
static ArrayList allData=new ArrayList();
...
bD.open();
游标查询=null;
//执行查询
query.moveToFirst();
对于(int j=0;j
填充适配器项的代码也应该在
onResume()方法中。
我也尝试了
search.listContent.setAdapter(search.arrayListAdapter)(仅此项),但如果没有幸运,您必须在OnResume中将新数据添加到适配器。@Favolas:您应该在调用notifyDataSetChanged()之前获取数据并将其设置到适配器,然后在实例化您的应用程序的位置添加代码adapter@Houcine贾斯汀,像这样吗<代码>search.listContent.setAdapter(search.arrayListAdapter);search.arrayListAdapter.notifyDataSetChanged()arrayListAdapter=newsearchadapter(mContext,allData);listContent.setFastScrollEnabled(false);setAdapter(arrayListAdapter)