【发布时间】:2015-10-19 09:28:11
【问题描述】:
这个问题可能会被问超过 1000 次,我仍然很困惑,这将是正确的方法?当我用谷歌搜索时,我发现了一些相关链接link1,link2,link3 等。我的解决方案是什么发现是在 xml 设计中使用相对布局。所有布局都将在布局文件夹中(如果您正在创建手机应用程序),尺寸应在 dimens.xml 中给出(在 values-mdpi、hdpi、xhdpi、xxhdpi、xxxhdpi文件夹)以支持所有屏幕。
如何为图像视图提供 marginTop。我正在做这样的计算:in ratios (1:1.5:2:3:4)-(mdpi:hdpi:xhdpi:xxhdpi:xxxhdpi)-(10dp-15dp-20dp-30dp-40dp)。 我的方法是否正确?
我在drawable-(mdpi:hdpi:xhdpi:xxhdpi:xxxhdpi)文件夹中给出了不同分辨率的不同图像。
我的问题在 values-mdpi/dimens.xml-margintop-10dp 中, values-hdpi/dimens.xml-margintop-15dp,values-xhdpi/dimens.xml-margintop-20dp 等。以(1:1.5:2:3:4)的比例为不同屏幕提供尺寸值是否正确? 在 Main.xml 中:
<RelativeLayout
android:id="@+id/rl_submain"
android:layout_width="match_parent"
android:layout_height="match_parent"
>
<ImageView
android:id="@+id/iv_papa"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/s_mtop"
android:background="@drawable/papa1"
android:gravity="center"/>
<TextView
android:id="@+id/tv_power"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:layout_marginBottom="@dimen/s_mbot"
android:textSize="12sp"
android:textColor="@color/white"
android:layout_alignParentBottom="true"
android:text="@string/poweredby"/>
</RelativeLayout>
<resources>
<!--Splash-->mdpi
<dimen name="s_mtop">10dp</dimen>
<dimen name="s_mbot">2dp</dimen>
<resources>
<!--Splash-->hdpi
<dimen name="s_mtop">15dp</dimen>
<dimen name="s_mbot">3dp</dimen>
<resources>
<!--Splash-->xhdpi
<dimen name="s_mtop">20dp</dimen>
<dimen name="s_mbot">4dp</dimen>
<resources>
<!--Splash-->xxhdpi
<dimen name="s_mtop">30dp</dimen>
<dimen name="s_mbot">6dp</dimen>
<resources>
<!--Splash-->xxxhdpi
<dimen name="s_mtop">40dp</dimen>
<dimen name="s_mbot">8dp</dimen>
【问题讨论】:
-
您是否考虑过为不同的屏幕尺寸创建资源?例如 layout-sw300dp、layoutsw400dp、layout-sw600dp?布局-sw800dp?那么很容易看出600和800覆盖平板
-
@murugalonger 我认为这个问题与从 drawables 文件夹加载图像无关;它是关于在布局中支持所有屏幕尺寸/设备
-
@murugalonger..我在这里问,我的方法是否正确。?
-
我的方法是否正确?不,不是……很难理解你的问题出在哪里……但是……如果你使用 dp 你不应该依赖 dpi 的大小......它是自动完成的......你可以让边距取决于“设备类型”,正如 Eenvincible 在他的第一条评论中所说的那样
标签: android xml layout screen-resolution