有人能给我举个例子,说明Android中的按钮和文本视图是根据;支持多个屏幕;?
我读了报纸 ?有人能给我举个例子,说明Android中的按钮和文本视图是根据;支持多个屏幕;?,android,java-me,Android,Java Me,我读了报纸 ? 但我不知道如何应用它,有人能给我举个按钮和文本视图的例子,说明它如何适合不同的设备吗?它没有你想象的那么复杂。首先请记住,您的基本布局总是为mdpi设计的,适合中等密度(约160 dpi)的正常屏幕大小 因此,在设计布局时,重要的一点是在定义布局时不要使用px作为单元。相反,始终使用dp(与密度无关的像素)作为单位,因为它们会自动缩放到当前密度的正确数量px 直到现在,您只有一个文件(例如myLayout.xml)用于所有不同的布局大小(小、普通、大和xlarge)。如果您认为您
但我不知道如何应用它,有人能给我举个按钮和文本视图的例子,说明它如何适合不同的设备吗?它没有你想象的那么复杂。首先请记住,您的基本布局总是为
mdpi
设计的,适合中等密度(约160 dpi)的正常屏幕大小
因此,在设计布局时,重要的一点是在定义布局时不要使用px作为单元。相反,始终使用dp
(与密度无关的像素)作为单位,因为它们会自动缩放到当前密度的正确数量px
直到现在,您只有一个文件(例如myLayout.xml)用于所有不同的布局大小(小、普通、大和xlarge)。如果您认为您的布局在带有xlarge显示屏的设备(如平板电脑)上应该有所不同,那么您只需在与layout
相同的级别上创建另一个名为layout xlarge
的文件夹和另一个名为myLayout.xml
的布局文件。现在,您可以对此文件进行更改,以使布局在具有xlarge显示器的设备上看起来有所不同。也许您需要一个更大的文本框来重新排列
按钮和文本框
如你所见,这并不难。只需使用dp作为维度的单位,Android将为您完成其余的工作 支持多个屏幕的最简单方法是将资源放在不同的密度文件夹中,并将布局放在不同的布局大小文件夹中 例如,具有以下文件夹结构:
AppRoot/
res/
drawable/
drawable-hdpi/
layout/
layout-large/
您可以根据位图的密度和大小将其放置在不同的可绘制目录中。这会为不同密度的屏幕整理出不同的位图
对于根据屏幕大小的不同布局,在布局和布局大目录中放置不同的布局,以支持屏幕的显示方式
让我们举一个简单的例子,一个小设备的简单列表填充屏幕,与一个大屏幕相比,您可能希望您的列表在屏幕的40%中,信息位于此屏幕的右侧:
layout/main\u layout.xml
:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
>
<ListView
android:id="@+id/main_list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
android:weightSum="1.0"
>
<LinearLayout
android:orientation="horizontal"
android:layout_weight="0.4"
android:layout_width="0dp"
android:layout_height="fill_parent"
>
<ListView
android:id="@+id/main_list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
<LinearLayout
android:id="@+id/details_large"
android:layout_weight="0.6"
android:layout_width="0dp"
android:layout_height="fill_parent"
>
<include layout="@layout/detail_information" />
</LinearLayout>
现在,您的应用程序只需使用“main_layout”,设备将根据屏幕大小选择一个,从而为您提供多屏幕支持
重要的一点是,这些布局是相同的命名文件main_layout.xml
,android从正确的文件夹中选择一个。按钮等的位图也是如此;将同一个命名位图放在多个目录中,android会根据屏幕密度选择要使用的位图
我没有在这些示例中添加文本视图和按钮,因为它们只是布局元素,您可以根据需要进行填充。我可以在xml文件中使用dp单元,还是应该将对象设置为按钮和文本视图,然后设置边距?不,您可以在xml文件中使用它们。e、 g.android:layout_marginTop=“10dp”