У меня есть окно поиска, в нижней части которого есть две вкладки, а под ними - Viewpager
, и все работы связаны.У меня также есть прослушиватель изменения текста для представления поиска, и в нем я получаю данные с сервера и помещаю их RecyclerView
, которые фрагментированы.
private void setSearch() {
android.support.v7.widget.SearchView searchView = getParentFragment().getView().findViewById(R.id.search_box);
searchView.setOnQueryTextListener(new android.support.v7.widget.SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
if (!newText.isEmpty()) {
ManagerAll.getInstance().fetchFiltereds(newText).enqueue(new Callback<List<a>>() {
@Override
public void onResponse(Call<List<a>> call, Response<List<a>> response) {
if (response.isSuccessful()) {
adapter = new Adapter(getContext(), response.body(), getFragmentManager());
list.setAdapter(adapter );
linearLayoutManager = new LinearLayoutManager(getContext());
linearLayoutManager.setOrientation(LinearLayoutManager.VERTICAL);
list.setLayoutManager(linearLayoutManager);
}
}
@Override
public void onFailure(Call<List<a>> call, Throwable t) {
}
});
return true;
} else return false;
}
});
}
Я поместил этот метод (выше) в оба фрагмента, которые лежат внутри viewPager.Почти все работает отлично.Все данные в соответствии с текстом поступают в представление переработчика, но эти данные поступают только на вторую вкладкуВо фрагменте первой вкладки нет данных.SearchView работает для обоих фрагментов, но только второй фрагмент заполняется данными.Первый просто пуст, хотя я меняю текст в поиске.