Google アプリケーション内のドロワーがスクロール可能であることに気付きましたが、何らかの理由でスクロール可能な DrawerLayout を実現する方法についての結論に達することができません。次の設計パラダイムでレイアウト ファイルを作成しようとしました。
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawerLayout"
android:layout_width="match_parent"
android:layout_height="match_parent">
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/frameLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".mainScreen">
<!-- Layout of Activity -->
</FrameLayout>
<!-- DrawerLayout segment -->
<ScrollView
android:id="@+id/scrollView"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/drawerLinearLayout"
android:orientation="vertical"
android:layout_width="260dp"
android:layout_height="match_parent"
android:layout_gravity="start|bottom"
android:layout_marginTop="?android:attr/actionBarSize"
android:divider="@android:color/transparent"
android:dividerHeight="0dp"
android:background="#77000000">
<!-- Layout of Drawer -->
</LinearLayout>
</ScrollView>
</android.support.v4.widget.DrawerLayout>
ただし、ScrollView の有無にかかわらず、ドロワーはアイテムが画面の端を超えると、アイテムを下部で切り取るだけです。どの形式のスクロールも有効にできません。何が不足しているか、有効にする必要があるかわかりません。考えをいただければ幸いです。
DrawerLayout セグメントの LinearLayout には、さまざまなスタイルのビューが含まれています。1 つのビューはタイトルのみを表示し、その下に仕切りがあり、1 つのビューは横にテキストがあるイメージビューを表示し、別のビューは行に組み込まれたスイッチでタイトルを表示します。そのため、XML コード化されたレイアウト ファイルの外で複数のスタイル付きビューを実行する場合は、それらを考慮する必要があります。