2

アプリ内にナビゲーション ドロワーを追加しようとしています。コードは次のとおりです。

<DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.abcxyz.properprojectdb.MyDrawerActivity">

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"></FrameLayout>

    <ListView
        android:layout_width="240dp"
        android:layout_height="match_parent"
        android:id="@+id/listView"
        android:entries="@array/planets"></ListView>
</DrawerLayout>

ListView に属性 android:layout_gravity を追加できません。使用できない理由がわかりません (インテリセンスは完全に動作しますが、layout_gravity は表示されません)。

アプリを実行するとクラッシュしますが、DrawerLayout を LinearLayout に置き換えると、アプリはクラッシュしません。ListView に属性 android:layout_gravity を追加していないためだと推測しています。 ここに画像の説明を入力これは、layout_gravity がインテリセンスにも表示されないことを示すスナップショットです。

4

3 に答える 3

4

置換: DrawerLayoutandroid.support.v4.widget.DrawerLayout

build.gradle に次の行を追加します。

compile "com.android.support:support-v4:22.0.0"

アップデート

DrawerLayoutlayout_gravity2つのビューで構成する必要があり、ドロワー自体を表すビューには設定できないようです。いつでもListView他のレイアウトでラップしてから、に設定できlayout_gravityますListView

于 2015-04-12T16:25:57.237 に答える
1

何もかも問題ないようです。android:layout_gravity="start"またはandroid:layout_gravity="end"ListViewに入れることができます

アップデート

私は自分の悪いところを見ました。@質問者は正しかった。あなたはに変更DrawerLayoutする必要がありますandroid.support.v4.widget.DrawerLayout

于 2015-04-12T16:20:19.710 に答える