ActionBar中的SearchView在android上有更多片段

时间:2018-01-09 04:35:32

标签: android android-actionbar fragment searchview whatsapp

我需要在ActionBar句柄中添加SearchBar以及更多片段,例如whatsApp 当在标签聊天中搜索获取数据时,以及在标签状态中搜索获得另一个数据 怎么做?这是我的代码有3个标签我需要每个标签有SearchView

碎片上有这个活动

$('#kitty-one, #kitty-two, #kitty-three').printThis({
    importCSS: false,
    loadCSS: "",
    header: "<h1>Look at all of my kitties!</h1>"
});

和此片段有数据

  public class ActivityForIncludeFragments extends AppCompatActivity{
@Override
  protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_for_include_fragments);

    ViewPager viewPager = (ViewPager)findViewById(R.id.viewPager);

    CategoryAdapter adapter = new CategoryAdapter(this,getSupportFragmentManager());
    viewPager.setAdapter(adapter);

    TabLayout tabLayout = (TabLayout)findViewById(R.id.tabLayout);
    tabLayout.setupWithViewPager(viewPager);
    invalidateOptionsMenu();


}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_main,menu);

    return true;
}

@Override
public boolean onPrepareOptionsMenu(Menu menu) {

    MenuItem menuItemAddData = menu.findItem(R.id.add_data);
    MenuItem menuItemActionSearch = menu.findItem(R.id.action_search);

    menuItemAddData.setVisible(false);
    menuItemActionSearch.setVisible(false);

    return super.onPrepareOptionsMenu(menu);



}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    int id = item.getItemId();
    switch (id){
        case R.id.add_stocking_warehouse:
            Intent intent = new Intent(ActivityForIncludeFragments.this,StockingWarehouse.class);
            startActivity(intent);
            break;
        case R.id.add_reportes:
            Intent intentReport = new Intent(ActivityForIncludeFragments.this,TableDaliyMovmentes.class);
            startActivity(intentReport);
            break;
            }
    return super.onOptionsItemSelected(item);

}
 }

1 个答案:

答案 0 :(得分:0)

请使用此

检查哪个片段可见
 Fragment fragment = getActivity().getSupportFragmentManager().findFragmentById(R.id.fragment_container);

  if (fragment != null && fragment.isVisible()) {
      if (fragment instanceof ChatFragment) {
         ....      
        } 
      else { }
  }