导航抽屉 header 布局:"Connected"
Navigation drawer header layout : "Connected"
我希望导航抽屉的 header 与此图片中的结果相同:
实际上,我的导航 header 的 xml 代码(我使用 navigationView.addHeaderView(navHeader); 添加到 MainActivity 中)如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorPrimary"
android:orientation="horizontal"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:theme="@style/ThemeOverlay.AppCompat.Dark">
<ImageView
android:id="@+id/loginView"
android:layout_width="50dp"
android:layout_height="50dp"
android:gravity="center"
android:paddingTop="@dimen/nav_header_vertical_spacing"
android:src="@android:drawable/ic_menu_camera" />
<TextView
android:id="@+id/loginName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:paddingTop="@dimen/nav_header_vertical_spacing"
android:text="SE CONNECTER"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"
android:textSize="16sp" />
</LinearLayout>
我得到的结果是:
抱歉截图中的法语 ;)
尝试在您的 LinearLayout 上使用 android:fitsSystemWindows="true"
:
<LinearLayout
...
android:fitsSystemWindows="true"
...
>
问题已解决。
我用过这个:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="@dimen/nav_header_height"
android:background="@drawable/side_nav_bar"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingTop="24dp"
android:theme="@style/ThemeOverlay.AppCompat.Dark">
<ImageView
android:id="@+id/loginView"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_marginTop="20dp"
android:src="@drawable/ic_account_circle_white_24dp" />
<TextView
android:id="@+id/loginName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginLeft="56dp"
android:layout_marginStart="56dp"
android:layout_marginTop="23dp"
android:layout_marginBottom="23dp"
android:text="@string/connect_yourself"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"
android:textSize="14sp" />
</RelativeLayout>
不过还是谢谢你!
我希望导航抽屉的 header 与此图片中的结果相同:
实际上,我的导航 header 的 xml 代码(我使用 navigationView.addHeaderView(navHeader); 添加到 MainActivity 中)如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorPrimary"
android:orientation="horizontal"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:theme="@style/ThemeOverlay.AppCompat.Dark">
<ImageView
android:id="@+id/loginView"
android:layout_width="50dp"
android:layout_height="50dp"
android:gravity="center"
android:paddingTop="@dimen/nav_header_vertical_spacing"
android:src="@android:drawable/ic_menu_camera" />
<TextView
android:id="@+id/loginName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:paddingTop="@dimen/nav_header_vertical_spacing"
android:text="SE CONNECTER"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"
android:textSize="16sp" />
</LinearLayout>
我得到的结果是:
抱歉截图中的法语 ;)
尝试在您的 LinearLayout 上使用 android:fitsSystemWindows="true"
:
<LinearLayout
...
android:fitsSystemWindows="true"
...
>
问题已解决。
我用过这个:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="@dimen/nav_header_height"
android:background="@drawable/side_nav_bar"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingTop="24dp"
android:theme="@style/ThemeOverlay.AppCompat.Dark">
<ImageView
android:id="@+id/loginView"
android:layout_width="24dp"
android:layout_height="24dp"
android:layout_marginTop="20dp"
android:src="@drawable/ic_account_circle_white_24dp" />
<TextView
android:id="@+id/loginName"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_marginLeft="56dp"
android:layout_marginStart="56dp"
android:layout_marginTop="23dp"
android:layout_marginBottom="23dp"
android:text="@string/connect_yourself"
android:textAppearance="@style/TextAppearance.AppCompat.Body1"
android:textSize="14sp" />
</RelativeLayout>
不过还是谢谢你!