TabLayout stopped working when you put NavigationDrawer

0

Hi, I have created a horizontal menu in the TabLayout from which I showed the corresponding Fragment of this menu, but I have set a Navigation Drawer and the TabLayout menu has stopped working, now when I show the Fragment it they are blank.

How can I show the Fragments of TabLayout ?

This is the code of the MainActivity.java

public class MainActivity extends AppCompatActivity implements NavigationView.OnNavigationItemSelectedListener {

private DrawerLayout drawer;
private ViewPager viewPager;
HorizontalScrollMenuView horizontal_menu;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);   

    ActionBar actionBar = getSupportActionBar();
    actionBar.setDisplayShowHomeEnabled(true);
    actionBar.setIcon(R.mipmap.ic_logo_gel);

    drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
    NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
    navigationView.setNavigationItemSelectedListener(this);

    ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(this, drawer, toolbar,
            R.string.navigation_drawer_open, R.string.navigation_drawer_close);
    drawer.addDrawerListener(toggle);
    toggle.syncState();

    horizontal_menu = (HorizontalScrollMenuView) findViewById(R.id.horizontal_menu);
    viewPager = (ViewPager) findViewById(R.id.pager);

    horizontal_menu.addItem("Menu 1", R.drawable.menu1_icon,true);
    horizontal_menu.addItem("Menu 2", R.drawable.menu2_icon );
    horizontal_menu.addItem("Menu 3", R.drawable.menu3_icon );
    horizontal_menu.addItem("Menu 4", R.drawable.menu4_icon );
    horizontal_menu.addItem("Menu 5", R.drawable.menu5_icon );

    horizontal_menu.showItems();

    PagerAdapter pagerAdapter = new PagerAdapter(getSupportFragmentManager());
    viewPager.setAdapter(pagerAdapter);
    viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {

        @Override
        public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
        }

        @Override
        public void onPageSelected(int position) {
            horizontal_menu.setItemSelected(position);
            currentPosition = position;
        }

        @Override
        public void onPageScrollStateChanged(int state) {
        }
    });

    horizontal_menu.setOnHSMenuClickListener(new HorizontalScrollMenuView.OnHSMenuClickListener() {
        @Override
        public void onHSMClick(MenuItem menuItem, int position) {
            viewPager.setCurrentItem(position);
        }
    });
}


@Override
public boolean onNavigationItemSelected(@NonNull android.view.MenuItem item) {
switch (item.getItemId()){
    case R.id.lateral_1:
        getSupportFragmentManager().beginTransaction().replace( R.id.fragment_container,
                new Menu_Lateral_1()).commit();
        break;
    case R.id.lateral_2:
        getSupportFragmentManager().beginTransaction().replace( R.id.fragment_container,
                new Menu_Lateral_2()).commit();
        break;
    case R.id.lateral_3:
        getSupportFragmentManager().beginTransaction().replace( R.id.fragment_container,
                new Menu_Lateral_3()).commit();
        break;
    case R.id.nav_share:
        Toast.makeText(this, "Share", Toast.LENGTH_SHORT).show();
        break;
    case R.id.nav_send:
        Toast.makeText(this, "Send", Toast.LENGTH_SHORT).show();
        break;
}
    drawer.closeDrawer(GravityCompat.START);
    return true;
}



private class PagerAdapter extends FragmentPagerAdapter {
    PagerAdapter(FragmentManager fm) {
        super(fm);
    }

    @Override
    public Fragment getItem(int position) {

        switch (position) {
            case 0:
                return new Menu_1();
            case 1:
                return new Menu_2();
            case 2:
                return new Menu_3();
            case 3:
                return new Menu_4();
            case 4:
                return new Menu_5();

            default:
                return new Menu_5();
        }
    }

    @Override
    public int getCount() {
        return 6;
    }
}
}

Code of the activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
tools:context="com.SoCu.CirDocu.MainActivity"
tools:openDrawer="start">

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="@color/colorPrimary"
        app:titleTextColor="@android:color/white"
        app:layout_collapseMode="pin"
        android:elevation="4dp"
        app:popupTheme="@style/AppTheme.FondoMenu"
        app:theme="@style/ThemeOverlay.AppCompat.Dark"/>

    <com.SoCu.Docu_A.custom_views.HorizontalScrollMenuView
        android:id="@+id/horizontal_menu"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:backgroundMenuColor="#0099cc"
        app:backgroundNotifications="@color/colorAccent"
        app:icon_height="30dp"
        app:icon_width="30dp"
        app:item_backgroundColor="@color/colorPrimary"
        app:item_colorSelected="#ffffff"
        app:item_textColor="#ffffff" />

    <FrameLayout
        android:id="@+id/fragment_container"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <android.support.v4.view.ViewPager
        android:id="@+id/pager"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <TextView
        android:id="@+id/ver_name"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content" />

</LinearLayout>


<android.support.design.widget.NavigationView
    android:id="@+id/nav_view"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    app:headerLayout="@layout/nav_header"
    app:menu="@menu/drawer_menu" />

</android.support.v4.widget.DrawerLayout>

The images above show the horizontal menu, with the content in white, and the images below are the side menu and a link to show the contents of that Fragement.

The same here will see the problem better. link

Thank you.

    
asked by SoCu 22.03.2018 в 20:30
source

0 answers