I've also noticed similar behavior when locking drawer pane. To resolve this in a convenient way, simply bring your fragment content view outside the DrawerLayout
in layout-XML. For example:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.v4.widget.DrawerLayout
android:id="@id/layoutDrawer"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:saveEnabled="false">
<!-- content is outside this drawer layout
because locking the drawer also disables
touchevents propagation to layoutContentFrame -->
<!-- navigation drawer -->
<LinearLayout
android:layout_height="match_parent"
android:layout_width="@dimen/width_drawer_left"
android:orientation="vertical"
android:layout_gravity="left|start"
android:padding="10dp"
android:background="@color/drawer_left_background">
<ListView
android:id="@id/drawerLeft"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:choiceMode="singleChoice" />
</LinearLayout>
</android.support.v4.widget.DrawerLayout>
<!-- content view -->
<FrameLayout
android:id="@id/layoutContentFrame"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginLeft="@dimen/width_drawer_left">
<!-- content will be added as fragments here -->
</FrameLayout>
</RelativeLayout>
At least it resolved my issue without any hack in code :)