Nueva pregunta

Pregunta:

 
  0  
 
Fecha: 23-03-2018 23:08:54 (En Español)

Los Fragment del TabLayout no se muestran al poner NavigationDrawer[No resuelta]

Hola tengo creado un menú horizontal en el TabLayout desde el que muesto los Fragment correspondientes de este menú, pero he puesto un Navigation Drawer y ha dejado de funcionar el menú del TabLayout, ahora cuando muestro los Fragment se quedan en blanco.

¿ Como puedo volver a mostrar los Fragmen del TabLayout ?

código del 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;
    }
}
}


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>


Dejo un video para que podaris ver mejor lo que pasa, por si alguien quiere ayudarme a solucionar este problema.





Gracias anticipadas
Etiquetas: Android - Framework - JAVA - Mobile - Pregunta Votos: 0 - Respuestas: 3 - Vistas: 5 Compartir en: Google Facebook Twitter LinkedIn Link
 

Respuestas:

  • Fecha: 24-03-2018 20:42:40 Algún mensajito en la consola de depuración?   Votos: 0 - Link respuesta
     
  •  
      0  
     
    Fecha: 25-03-2018 00:30:59 Creo que los mensajes que muestra no tienen nada que ver, pero como no se a lo que se refieren los textos de color rojo te los pongo aquí, muchos de ellos son de tema de audio, no sé si todos son por eso

    hay más texto hacia arriba, pero pone lo del audio

    ...
    ...
    ..
    .
    AudioRecord:
    AudioRecord:
    AudioRecord:
    AudioRecord:
    03-24 20:54:41.589 1756-19609/? E/AudioRecord: AudioFlinger could not create record track, status: -12
    03-24 20:54:41.591 1756-19609/? E/AudioRecord-JNI: Error creating AudioRecord instance: initialization check failed with status -12.
    03-24 20:54:41.591 1756-19609/? E/android.media.AudioRecord: Error code -20 when initializing native AudioRecord object.
    03-24 20:54:41.592 1756-19609/? E/ActivityThread: Failed to find provider info for com.google.android.apps.gsa.testing.ui.audio.recorded
    03-24 20:54:45.833 19884-19884/? E/asset: setgid: Operation not permitted
    03-24 20:54:46.630 1076-4113/? E/AudioFlinger: not enough memory for AudioTrack size=131296
    03-24 20:54:46.630 1076-4113/? E/AudioFlinger: createRecordTrack_l() initCheck failed -12; no control block?
    03-24 20:54:46.630 1756-19609/? E/AudioRecord: AudioFlinger could not create record track, status: -12
    03-24 20:54:46.633 1756-19609/? E/AudioRecord-JNI: Error creating AudioRecord instance: initialization check failed with status -12.
    03-24 20:54:46.633 1756-19609/? E/android.media.AudioRecord: Error code -20 when initializing native AudioRecord object.
    03-24 20:54:46.634 1756-19609/? E/ActivityThread: Failed to find provider info for com.google.android.apps.gsa.testing.ui.audio.recorded
    03-24 20:54:47.110 1537-1703/? E/installd: Failed to delete /data/app/vmdl912381797.tmp: No such file or directory
    03-24 20:54:47.955 1670-12476/? E/NetworkScheduler: Unrecognised action provided: android.intent.action.PACKAGE_REMOVED
    03-24 20:54:48.056 10527-10527/? E/Finsky: [2] com.google.android.finsky.wear.ar.a(3): onConnectionFailed: ConnectionResult{statusCode=API_UNAVAILABLE, resolution=null, message=null}
    03-24 20:54:48.092 1449-1724/? E/SurfaceFlinger: ro.sf.lcd_density must be defined as a build property
    03-24 20:54:48.118 1670-12476/? E/NetworkScheduler: Unrecognised action provided: android.intent.action.PACKAGE_REPLACED
    03-24 20:54:48.649 19985-19985/? E//system/bin/webview_zygote32: Failed to make and chown /acct/uid_99073: Permission denied
    03-24 20:54:48.649 19985-19985/? E/Zygote: createProcessGroup(99073, 0) failed: Permission denied
    03-24 20:54:48.701 19999-19999/? E/asset: setgid: Operation not permitted
    03-24 20:54:48.940 19937-20010/com.SoCu.CirDocu E/chromium: [ERROR:instance.cc(49)] Unable to locate service manifest for metrics
    03-24 20:54:48.941 19937-20010/com.SoCu.CirDocu E/chromium: [ERROR:service_manager.cc(890)] Failed to resolve service name: metrics
    03-24 20:54:49.592 1449-1485/? E/SurfaceFlinger: ro.sf.lcd_density must be defined as a build property
    03-24 20:54:55.128 1123-1140/? E/BatteryExternalStatsWorker: modem info is invalid: ModemActivityInfo{ mTimestamp=0 mSleepTimeMs=0 mIdleTimeMs=0 mTxTimeMs[]=[0, 0, 0, 0, 0] mRxTimeMs=0 mEnergyUsed=0}
    03-25 08:15:59.932 1123-1136/? E/memtrack: Couldn't load memtrack module
    03-25 08:15:59.952 1123-1136/? E/memtrack: Couldn't load memtrack module
    03-25 08:16:06.084 10527-10527/? E/Finsky: [2] com.google.android.finsky.wear.ar.a(3): onConnectionFailed: ConnectionResult{statusCode=API_UNAVAILABLE, resolution=null, message=null}
    03-25 08:16:11.088 1123-1136/? E/memtrack: Couldn't load memtrack module
    03-25 08:16:11.100 1123-1136/? E/memtrack: Couldn't load memtrack module
    03-25 08:16:15.393 1123-1136/? E/memtrack: Couldn't load memtrack module
    03-25 08:16:16.912 1449-1463/? E/IPCThreadState: binder thread pool (4 threads) starved for 184 ms
    03-25 08:16:17.244 1449-1485/? E/IPCThreadState: binder thread pool (4 threads) starved for 251 ms
    03-25 08:16:17.394 1076-16994/? E/AudioFlinger: not enough memory for AudioTrack size=131296
    03-25 08:16:17.394 1076-16994/? E/AudioFlinger: createRecordTrack_l() initCheck failed -12; no control block?
    03-25 08:16:17.394 1756-19727/? E/AudioRecord: AudioFlinger could not create record track, status: -12
    03-25 08:16:17.411 1756-19727/? E/AudioRecord-JNI: Error creating AudioRecord instance: initialization check failed with status -12.
    03-25 08:16:17.411 1756-19727/? E/android.media.AudioRecord: Error code -20 when initializing native AudioRecord object.
    03-25 08:16:17.412 1756-19727/? E/ActivityThread: Failed to find provider info for com.google.android.apps.gsa.testing.ui.audio.recorded
    03-25 08:16:17.426 1670-14107/? E/ctxmgr: [NetworkUtil]No active synchronizable contexts.
    03-25 08:16:17.662 1670-1670/? E/BeaconBle: Missing BluetoothAdapter
    03-25 08:16:17.685 1670-1670/? E/BeaconBle: Scan couldn't start for Places
    03-25 08:16:17.748 1670-1670/? E/ctxmgr: [PlaceFenceHelper]NearbyBuffer is null!
    


    ahora estoy haciendo pruebas y cambiando el activity_main.xml por este otro.....
    y aquí pasa todo lo contrario, funciona el menú horizontal y ha dejado de funcionar el menú lateral.




    Te dejo el código por si ves lo que quieren decir estos errores.

    03-25 09:19:19.685 1756-20926/? E/AudioRecord: AudioFlinger could not create record track, status: -12
    03-25 09:19:19.687 1123-1136/? E/memtrack: Couldn't load memtrack module
    03-25 09:19:19.688 1756-20926/? E/AudioRecord-JNI: Error creating AudioRecord instance: initialization check failed with status -12.
    03-25 09:19:19.688 1756-20926/? E/android.media.AudioRecord: Error code -20 when initializing native AudioRecord object.
    03-25 09:19:14.662 1756-19609/? E/ActivityThread: Failed to find provider info for com.google.android.apps.gsa.testing.ui.audio.recorded
    03-25 09:19:19.689 1756-20926/? E/ActivityThread: Failed to find provider info for com.google.android.apps.gsa.testing.ui.audio.recorded
    03-25 09:19:24.750 1076-2321/? E/AudioFlinger: not enough memory for AudioTrack size=131296
    03-25 09:19:24.750 1076-2321/? E/AudioFlinger: createRecordTrack_l() initCheck failed -12; no control block?
    03-25 09:19:24.751 1756-20926/? E/AudioRecord: AudioFlinger could not create record track, status: -12
    03-25 09:19:24.752 1756-20926/? E/AudioRecord-JNI: Error creating AudioRecord instance: initialization check failed with status -12.
    03-25 09:19:24.752 1756-20926/? E/android.media.AudioRecord: Error code -20 when initializing native AudioRecord object.
    03-25 09:19:29.781 1076-9437/? E/AudioFlinger: not enough memory for AudioTrack size=131296
    03-25 09:19:29.781 1076-9437/? E/AudioFlinger: createRecordTrack_l() initCheck failed -12; no control block?
    03-25 09:19:29.781 1756-20926/? E/AudioRecord: AudioFlinger could not create record track, status: -12
    03-25 09:19:29.783 1756-20926/? E/AudioRecord-JNI: Error creating AudioRecord instance: initialization check failed with status -12.
    03-25 09:19:29.783 1756-20926/? E/android.media.AudioRecord: Error code -20 when initializing native AudioRecord object.
    03-25 09:19:34.811 1076-9437/? E/AudioFlinger: not enough memory for AudioTrack size=131296
    03-25 09:19:34.811 1076-9437/? E/AudioFlinger: createRecordTrack_l() initCheck failed -12; no control block?
    03-25 09:19:34.812 1756-20926/? E/AudioRecord: AudioFlinger could not create record track, status: -12
    03-25 09:19:34.814 1756-20926/? E/AudioRecord-JNI: Error creating AudioRecord instance: initialization check failed with status -12.
    03-25 09:19:34.814 1756-20926/? E/android.media.AudioRecord: Error code -20 when initializing native AudioRecord object.
    03-25 09:19:34.815 1756-20926/? E/ActivityThread: Failed to find provider info for com.google.android.apps.gsa.testing.ui.audio.recorded
    03-25 09:19:37.907 1449-1725/? E/SurfaceFlinger: ro.sf.lcd_density must be defined as a build property
    03-25 09:19:38.390 21340-21340/? E//system/bin/webview_zygote32: Failed to make and chown /acct/uid_99078: Permission denied
    03-25 09:19:38.390 21340-21340/? E/Zygote: createProcessGroup(99078, 0) failed: Permission denied
    03-25 09:19:38.433 21354-21354/? E/asset: setgid: Operation not permitted
    03-25 09:19:38.813 21308-21365/com.SoCu.CirDocu E/chromium: [ERROR:instance.cc(49)] Unable to locate service manifest for metrics
    03-25 09:19:38.813 21308-21365/com.SoCu.CirDocu E/chromium: [ERROR:service_manager.cc(890)] Failed to resolve service name: metrics
    03-25 09:19:39.304 1449-1725/? E/SurfaceFlinger: ro.sf.lcd_density must be defined as a build property
    03-25 09:19:47.279 1123-1140/? E/BatteryExternalStatsWorker: modem info is invalid: ModemActivityInfo{ mTimestamp=0 mSleepTimeMs=0 mIdleTimeMs=0 mTxTimeMs[]=[0, 0, 0, 0, 0] mRxTimeMs=0 mEnergyUsed=0}
    03-25 09:19:54.993 1123-1136/? E/memtrack: Couldn't load memtrack module
    03-25 09:19:55.006 1123-1136/? E/memtrack: Couldn't load memtrack module
    03-25 09:20:01.277 1123-1136/? E/memtrack: Couldn't load memtrack module
    03-25 09:20:01.288 1123-1136/? E/memtrack: Couldn't load memtrack module
    
    
      Votos: 0 - Link respuesta
     
  •  
      0  
     
    Fecha: 25-03-2018 09:12:52 Hola Carlos, bueno te nombro a ti porque parece que eres el único que ayuda en este tema, no sé si alguien más tiene algo que decir, cualquier ayuda siempre será bien recibida.
    No quito el código anterior porque no sé si lo has visto, o estas probando algo, pero te pongo aquí lo que he avanzado y algo más está funcionando.

    El menú lateral todavía lo muestra por debajo del menú horizontal, y no consigo ponerlo bien.

    En cuanto al funcionamiento de los menús, ahora el Menú Horizontal funcionan todas las opciones, pero dejan de funcionar en el momento que se abre el Menú Lateral, y el Menú Lateral ahora se muestra al pulsa su icono, y funciona mostrando el contenido.
    Pero como digo si volvemos a pulsar las botones del Menú Horizontal, ya no muestra nada.




    Así es como he dejado ahora activity_mail.xml

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout
        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:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fitsSystemWindows="true"
        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" />
    
        <android.support.v4.widget.DrawerLayout
            android:id="@+id/drawer_layout"
            android:layout_height="match_parent"
            android:layout_width="match_parent"
            android:fitsSystemWindows="true"
            tools:openDrawer="start">
    
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:orientation="vertical">
    
                <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>
    
            <FrameLayout
                android:id="@+id/fragment_container"
                android:layout_width="match_parent"
                android:layout_height="match_parent" />
    
            <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:itemTextColor="#000000"
                app:menu="@menu/drawer_menu"
                android:layout_marginTop="-24dp"/>
    
        </android.support.v4.widget.DrawerLayout>
    
    </LinearLayout>
    
      Votos: 0 - Link respuesta
     
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión
 
frjcbbae garagebible.com