Come altri hanno detto, e Cheney ha detto nella sua risposta - è probabilmente meglio lasciarlo come previsto. Tuttavia, lo DrawerLayout
è uno stile diverso da SlidingMenu
. Google ha anche aggiunto SlidingPaneLayout
che corrisponde più strettamente allo stile di SlidingMenu.
Ho finito per implementare uno SlidingPaneLayout
in questo modo, in quanto era più di quello che stavo cercando, dopo tutto. (Questo è anche lo stile delle app YouTube/Hangouts)
<android.support.v4.widget.SlidingPaneLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/sliding_pane_layout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/left_pane"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<FrameLayout
android:id="@+id/content_frame"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="1"/>
</android.support.v4.widget.SlidingPaneLayout>
Poi per aprire con il pulsante della barra home azione:
getActionBar().setDisplayHomeAsUpEnabled(true);
getActionBar().setHomeButtonEnabled(true);
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action buttons
switch(item.getItemId()) {
case android.R.id.home:
if (mPaneLayout.isOpen())
mPaneLayout.closePane();
else
mPaneLayout.openPane();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
è quindi possibile implementare un PanelSlideListener
da gestire quando si scorrevole/aperto /chiuso.
vi suggerisco di leggere la serie di Adam Powell sul cassetto di navigazione troppo - parte 3 ottiene nell'uso di SlidingPaneLayout vs navigazione cassetto:
Parte 1-https://plus.google.com/+AdamWPowell/posts/2zi4DXd3jkm
Parte 2-https://plus.google.com/+AdamWPowell/posts/VdgexsZeXHW
Parte 3 - https://plus.google.com/+AdamWPowell/posts/8j2GVw72i1E
Parte 4-https://plus.google.com/+AdamWPowell/posts/TtBFUXhe5HU
cercando di fare lo stesso thing..I vorrebbe impostare un margine che potrebbe essere trascinato ad aprire, simile a SlidingMenu. Ho postato qui http://stackoverflow.com/questions/16988597/set-drag-margin-for-android-navigation-drawer – Patrick