【问题标题】:Android single screen layout for all devices适用于所有设备的 Android 单屏布局
【发布时间】:2016-11-26 14:57:42
【问题描述】:

我创建了一个 Android 应用并在 Nexus6 模拟器上对其进行了测试。 Nexus6 模拟器上的一切似乎都很好,但是当我在真实设备(三星 S6 和 S5)上运行该应用程序时,布局全都搞砸了。我怎样才能解决这个问题? 我必须为每个设备创建单独的布局吗? Android 是否对所有屏幕都有类似 1 的布局?

我将所有图像拖放到可绘制文件夹中,而不是使用“添加图像资源”。 hdpi,mdpi文件夹中没有任何内容。所有图像都在可绘制文件夹中。这是我问题的原因吗? 请指教。

【问题讨论】:

  • 发布您的布局代码,发布模拟器布局的屏幕截图(您希望它的外观)和“混乱”布局的屏幕截图。如果您不提供更多信息,我们真的无法帮助您。
  • 听起来您使用的 ImageViews 正在缩放到屏幕密度并与其他视图混淆。您经常需要限制 ImageView 的宽度和高度,而不仅仅是将它们放在布局中。您还可以在 android studio 中预览其他屏幕尺寸
  • 没错。我使用了图像视图。我会尝试设置它们的固定宽度和高度。

标签: android android-layout


【解决方案1】:

这完全取决于您的 xml 设计。在设计页面时,请尝试使用“匹配父级”并确保您正在制作适合所有屏幕分辨率的布局。看看 AFAIK...

https://developer.android.com/training/multiscreen/screensizes.html

https://developer.android.com/training/multiscreen/screendensities.html

https://developer.android.com/guide/practices/screens_support.html

How to define dimens.xml for every different screen size in android?

例如:

在你的 xml 中

<supports-screens android:smallScreens="true" 
      android:normalScreens="true" 
      android:largeScreens="true"
      android:xlargeScreens="true"
      android:anyDensity="true" />

【讨论】:

  • 谢谢,我会查看链接并尝试添加您在我的布局中提供的代码。
  • 很好,希望对您有所帮助
猜你喜欢
  • 2021-12-15
  • 1970-01-01
  • 2020-05-30
  • 1970-01-01
  • 1970-01-01
  • 2014-06-08
  • 2015-03-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多