El menú deslizante no se abre al deslizar
Estoy tratando de usar la biblioteca de Sliding Menu
en mi aplicación, pero estoy teniendo un problema para conseguir que se deslice con mi dedo. Puedo conseguir que se abra si llamo el método toggle()
que puedo cuando el icono de home
es presionado o si slide my finger across the ActionBar
pero si slide my finger across the ActionBar
mi dedo para abrirlo donde está todo el contenido, no pasa nada
Esta es mi actividad
public class SmsActivity extends SlidingActivity { @Override public void onCreate(Bundle state){ super.onCreate(state); setContentView(R.layout.sms_layout); Intent i = getIntent(); view = i.getIntExtra("sms_view", 1); ActionBar bar = getActionBar(); bar.setDisplayHomeAsUpEnabled(true); bar.setIcon(R.drawable.menu_button); setBehindContentView(R.layout.sms_menu_layout); SlidingMenu menu = getSlidingMenu(); menu.setMode(SlidingMenu.LEFT); menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_FULLSCREEN); menu.setShadowWidthRes(R.dimen.shadow_width); menu.setShadowDrawable(R.drawable.shadow); menu.setBehindOffsetRes(R.dimen.slidingmenu_offset); menu.setFadeDegree(0.35f); setSlidingActionBarEnabled(true); }
El menú debe abrir un PreferenceFragment
y el contenido es sólo un ListFragment
Aquí está el XML para esa actividad
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <fragment android:id="@+id/sms_frame" android:name="com.app.notifyme.Fragments.ContactListFragment" android:layout_width="match_parent" android:layout_height="match_parent"/> </LinearLayout>
Traté de seguir el ejemplo y no veo nada diferente de lo que tengo, así que no sé lo que estoy haciendo mal?
Intente establecer setClickable (true) para ver que regresa de onCreateView en Fragmento.
Creo que puede faltar estas dos líneas:
menu.attachToActivity(this, SlidingMenu.SLIDING_WINDOW); menu.setMenu(R.layout.sm_app);
Éstos conectan su SlidingMenu a su actividad – usted no está viendo el menú, porque no está atado.
Yo estaba teniendo el mismo problema y lo arreglo con:
menu.attachToActivity(this, SlidingMenu.SLIDING_WINDOW);
en lugar de
menu.attachToActivity(this, SlidingMenu.SLIDING_CONTENT);
Ejemplo:
menu = new SlidingMenu(this); menu.setMode(SlidingMenu.LEFT); menu.setTouchModeAbove(SlidingMenu.TOUCHMODE_MARGIN); menu.setShadowDrawable(R.drawable.bg_menu_shadow); menu.setShadowWidthRes(R.dimen.bg_shadow_width); menu.setBehindScrollScale(0.0f); menu.setFadeDegree(0.35f); menu.attachToActivity(this, SlidingMenu.SLIDING_WINDOW); menu.setMenu(R.layout.menu);
Cuídate