我正在一个项目中,其中MainActivity
是唯一具有多个ViewPage片段的Activity,每个Fragment
使用实现RecyclerView
界面的Filterable
自定义适配器显示数据。 MainActivity
是
public class MainActivity extends AppCompatActivity {
private Toolbar mToolbar;
private TabLayout mTabLayout;
private ViewPager mViewPager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mToolbar=findViewById(R.id.toolbar);
mTabLayout=findViewById(R.id.tabLayout);
mViewPager=findViewById(R.id.viewPager);
setSupportActionBar(mToolbar);
PagerAdpater adpater=new PagerAdpater(getSupportFragmentManager());
adpater.addFragment(new GreetingFragment(),"Greeting");
adpater.addFragment(new NumberFragment(),"Numbers");
adpater.addFragment(new EatingOutFragment(),"Eating Out");
adpater.addFragment(new ColorFragment(),"Colors");
adpater.addFragment(new ClothesFragment(),"Clothes");
adpater.addFragment(new FamilyFragment(),"Family");
mViewPager.setAdapter(adpater);
mTabLayout.setupWithViewPager(mViewPager);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.toolbar_search_menu,menu);
MenuItem menuItem=menu.findItem(R.id.action_search);
SearchView searchView=(SearchView) menuItem.getActionView();
searchView.setQueryHint("Type here to search");
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
return true;
}
});
return true;
}
}
如您在代码中看到的。 toolBar中的SeachView已设置。它显示在操作栏中。但是我想通过从DataService类获取片段的内容来搜索片段的内容。我想当我单击搜索图标时会出现一个内容列表,我可以对其进行过滤。
**如果您不明白我的意思,我会编辑我的问题**
最佳答案
您是否要说的是,当您单击搜索按钮/图标时,想要显示包含搜索结果的页面吗?如果那不是您的意思,请编辑您的问题。