所以,我已经google了很多,但仍然无法安静地掌握这个概念。我有3个文件夹:xhdpi,lhdpi和mhdpi。我确实理解不同倾角和屏幕密度的转换和缩减。 Android会在应用程序运行时为正确的屏幕类型选择资源。
但是,我该如何开始?我在Photoshop中为我的应用程序做了一个背景。背景在720x1080px中定义并导出为.png文件。我把.png放在xhdpi文件夹中。我的索尼Xperia Z上的所有功能都很好,但是当朋友将它装在他的Galaxy 3上时,背景是“小到”并且不适合他的屏幕。我认为这是因为bacground很小。
但我需要多大才能成功呢?什么px-sizes应该xhdpi可绘制资源适合每个xhdpi屏幕?
一个好的方法是从最大的大小开始,xhdpi?然后将drawables转换为mdpi和ldpi?如果是这样,我需要 px 中的初学者大小,以便我可以在Photoshop中为应用程序创建背景。
以下是我如何使用背景:(注意,我将我的身高改为fill_parent,修复了“未填满整个屏幕的问题”)
<?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="match_parent"
android:orientation="vertical" >
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:background="@drawable/bg_xhdpi" >
</RelativeLayout>
答案 0 :(得分:1)
要使PX尺寸适当缩放,您需要使用以下比例进行缩放:
XDPI为2X
HDPI为1.5X
MDPI为1X(基线
.75X for LDPI
在代码(或XML)中指定大小时,请使用DP参数指定值(如果指定字体,则使用SP)。
例如:android:layout_marginLeft="12dp"
以下是文档:http://developer.android.com/guide/practices/screens_support.html,您会注意到此图片以及描述此内容的许多其他详细信息。
答案 1 :(得分:0)
您可以在this table中找到不同设备屏幕密度和分辨率的简报;根据它,Galaxy SIII是xhdpi,分辨率为1280 X 720.此外,您可能需要考虑遵循compatibility mode guide以避免在多个屏幕中呈现问题。