Dee*_*tra 10 android android-layout image-size navigation-drawer drawerlayout
public DrawerProfile(Context context) {
super(context);
HeaderImageView = new ImageView(context);
HeaderImageView.setVisibility(VISIBLE);
HeaderImageView.setScaleType(ImageView.ScaleType.CENTER);
HeaderImageView.setImageResource(R.mipmap.drawer_background_image);
addView(HeaderImageView);
}
Run Code Online (Sandbox Code Playgroud)
我想在Drawer中添加一个图像,它应该覆盖抽屉头的整个区域.我想知道图像(分辨率)的大小应该是多少; 适用于各种屏幕分辨率的手机.如何最小化照片尺寸?
在此屏幕截图中,标题图像未覆盖Drawer的整个区域
Muh*_*der 26
我最近制作了一个应用程序并对几乎所有材料设计方面进行了彻底的研究,所以我想在这里分享我的经验,它可能对你有所帮助.
首先阅读这篇精彩的文章,它将指导您设置导航抽屉的每个属性和使用它的视图.
抽屉图像应该是或通常是导航抽屉宽度的16/9.(HeaderHeight = NavDrawerWidth*9/16)
我使用了576x324像素的图像(非常干净漂亮的图片,接近27KB)并将其放在drawable-nodpi中以避免自动缩放和内存问题.
我使用宽度为304dp的导航抽屉(大多数情况下你会发现它,在谷歌应用程序上,但他们也在一些应用程序上使用320dp,如播放音乐,环聊等).
除平板电脑外,几乎所有设备的HeaderImage高度可能保持不变.
对于设备sw-480dp-xxxhdpi使用抽屉宽度304dp和头部高度170dp.
从sw-600dp上面的设备,至少使用抽屉宽度400dp和标题图像高度225dp.
这是我的drawer_header.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="@dimen/navDrawer_header_height"
android:background="@drawable/img_navdrawer_header"
android:gravity="bottom"
android:orientation="vertical"
android:padding="16dp"
android:theme="@style/ThemeOverlay.AppCompat.Dark" >
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
这就是我在里面使用它的方式 NavigationView
<android.support.design.widget.NavigationView
android:id="@+id/navigation_view"
android:layout_width="@dimen/nav_drawer_width"
android:layout_height="match_parent"
android:layout_gravity="start"
app:headerLayout="@layout/drawer_header"
app:menu="@menu/drawer" />
Run Code Online (Sandbox Code Playgroud)
现在是时候设定界限了 /res/values/dimens/
<dimen name="nav_drawer_width">304dp</dimen>
<dimen name="navDrawer_header_height">170dp</dimen>
Run Code Online (Sandbox Code Playgroud)
对于平板电脑:/res/values-sw600dp/,/res/values/sw-720dp
<dimen name="nav_drawer_width">400dp</dimen>
<dimen name="navDrawer_header_height">225dp</dimen>
Run Code Online (Sandbox Code Playgroud)
希望这有助于某人.
| 归档时间: |
|
| 查看次数: |
15929 次 |
| 最近记录: |