首先,我想说的是,我可能会在互联网上用红色来表示这个话题。
我有点了解它的图片,但仍然不确定,我的大脑正在努力思考它应如何正常运行,因此我需要有人向我澄清这些事情,可能比我在其他教程和主题中发现的要好。 />
另外,很多问题和答案都已经过时了,我知道对于小,大和xlarge之类的布局,这些限定词已经过时了,因此刷新会很好。
所以困扰我的是如何在android中支持多种屏幕尺寸和方向?
我知道我需要为不同的屏幕密度支持不同的可绘制资源,并且需要为不同的屏幕尺寸使用最小宽度的限定符。
问题是我不明白的是如何将两者结合在一起。
例如,对于第一个示例,我喜欢徽标标志,该标志应覆盖手机的整个屏幕。
我是否可以实际提供所有方向的所有可能解决方案和徽标的所有可能大小,或者android将根据我给他的最接近徽标的大小来调整它们的大小?
最小宽度限定符如何与不同密度的可绘制资源配合使用?
它们只是根据屏幕dpi更改图片的大小,但不更改布局外观。
我应该根据屏幕尺寸更改布局,图片是否会根据浓度本身变化,这实际上是第二个示例,因为就像按钮是不同的故事一样,如果它们在mdpi中为50 x 50像素,则为100 x 100像素在xhdpi中。
这就是我得到的。
更大的问题是如何独自放置自己填满屏幕的图片,并考虑到屏幕旋转以及宽度和高度的变化。
所以这是一个很长的问题,希望我告诉您您需要知道什么,已经问过类似的问题,但是它们有些过时并且在某些地方已经过时了,即使在那儿,我仍然找不到我一直在寻找的所有答案。因为我希望我能在这里找到他们。
期待您的帮助,并预先感谢您!
答案 0 :(得分:0)
我要说的是,要使该主题复杂化,以支持所有尺寸/布局,您在设计布局时只需记住它们。您的绝大多数布局只需要构建一次,并且如果以能够很好地扩展的方式进行构建,就可以解决问题。
例如,如果您尝试绘制一个中间带有徽标的启动屏幕,则可以执行以下操作。
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:layout_gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/my_logo" />
</FrameLayout>
这将适用于所有设备/尺寸/方向,因为它只是将徽标放在中间。
在构建布局时,只需关注当前现代手机的平均尺寸,但请记住人们的设备更小。将其用作资产的基础,并尝试包含较小的资产,或使用矢量图像。
如果您要构建的View很长,请将其包装在ScrollView
中,以便它可以在较小的设备上滚动。
我只会在非常特殊的情况下使用其他布局目录(用于调整大小或方向),例如当您想完全更改布局外观时。
希望有帮助。