我在布局文件夹中创建了android布局我的设备英寸是3.2到5英寸,它位于普通屏幕下,仅针对此设备,但我的布局在3.2和4英寸之间相互不同。
答案 0 :(得分:0)
您可以在java中获取有问题的屏幕尺寸并进行检查
答案 1 :(得分:0)
遵循:Supporting multiple screen size - Android
定义你的维度值
res/values-sw600dp/dimen.xml -> 7+ inches
res/values-sw720dp/dimen.xml -> 10+ inches
values-w360dp
values-w500dp
values-w480dp
values-xlarge
values-v11
values-v14
Sherlock Bar检查那里
答案 2 :(得分:0)
res/layout/my_layout.xml // layout for normal screen size ("default")
res/layout-small/my_layout.xml // layout for small screen size
res/layout-large/my_layout.xml // layout for large screen size
res/layout-xlarge/my_layout.xml // layout for extra large screen size
res/layout-xlarge-land/my_layout.xml // layout for extra large in landscape orientation
res/drawable-mdpi/my_icon.png // bitmap for medium density
res/drawable-hdpi/my_icon.png // bitmap for high density
res/drawable-xhdpi/my_icon.png // bitmap for extra high density
答案 3 :(得分:0)
您需要为该
创建不同的文件夹例如
布局文件夹/ main.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/RelativeLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/background"
android:orientation="vertical" >
<Button
android:id="@+id/rate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="Rate us"
android:textColor="@color/black_font" />
</RelativeLayout>
<强>布局大/ main.xml中强>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/RelativeLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/background"
android:orientation="vertical" >
<Button
android:id="@+id/rate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="Rate us"
android:textColor="@color/black_font"
android:textSize="30sp" />
</RelativeLayout>
<强>布局XLARGE / main.xml中强>
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/RelativeLayout1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/background"
android:orientation="vertical" >
<Button
android:id="@+id/rate"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
android:text="Rate us"
android:textColor="@color/black_font"
android:textSize="60sp" />
</RelativeLayout>
有关详细信息,请参阅this link
对于您的问题,您需要通过密度
创建它ldpi
低密度(ldpi)屏幕的资源(~120dpi)。mdpi
中密度(mdpi)屏幕(~160dpi)的资源。 (这是基线密度。)hdpi
用于高密度(hdpi)屏幕的资源(~240dpi)。xhdpi
超高密度(xhdpi)屏幕(~320dpi)的资源。nodpi
所有密度的资源。这些是与密度无关的资源。无论当前屏幕的密度如何,系统都不会扩展使用此限定符标记的资源。tvdpi
mdpi和hdpi之间的屏幕资源;大约213dpi。这不被视为&#34;主要&#34;密度组。它主要用于电视,大多数应用程序都不需要它 - 提供mdpi和hdpi资源就足够了大多数应用程序,系统会根据需要进行扩展。如果您发现有必要提供tvdpi资源,则应将其大小设置为1.33 * mdpi。例如,mdpi屏幕的100px x 100px图像对于tvdpi应为133px x 133px。