在fragmenttabhost

时间:2015-05-27 11:18:53

标签: android fragment-tab-host

我正面临一个问题,我已经尝试了很多方法,但没有一种方法适合我。我正在使用fragmenttabhost作为标签。在一个选项卡,即SearchFragment选项卡中,有一个带有搜索按钮的edittext,底部显示了listview。

假设我执行搜索,现在列表显示给我,现在如果我通过单击另一个选项卡切换片段并返回搜索片段仍然会向我显示列表,其中包含我在edittext中键入的文本。 / p>

要求是:我希望片段打开时视图为空。我每次都在调试onActivityCreated()。

我使用的代码是this

请查看我已使用的代码

etSearch = (EditText) getView().findViewById(R.id.etSearch);
        etSearch.setText("");

并在setDefaultValues()

universityArrayList.clear();
        contactArrayList.clear();
        adapterUniversity = new AdapterUniversity(getActivity(), universityArrayList);
        lvUniversities.setAdapter(adapterUniversity);
        lvUniversities.setSelector(new ColorDrawable(Color.parseColor("#00000000")));
        lvContacts.setSelector(new ColorDrawable(Color.parseColor("#00000000")));
        adapterContacts = new AdapterContacts(getActivity(), contactArrayList);
        lvContacts.setAdapter(adapterContacts);

1 个答案:

答案 0 :(得分:0)

当您切换到选项卡然后onActivityCreated或onResume时,您可以编写以下代码来清除edittext值

editTextSearch.setText("");

使用最初在同一方法中使用的相同适配器数据重新填充列表

ListAdapter customAdapter = new ListAdapter(this, R.layout.list_item, tempList); 
listview.setAdapter(customAdapter);

您还可以使用notifySetDataChanged()方法更新数据