【问题标题】:issue with android app different layout sizesandroid应用程序不同布局大小的问题
【发布时间】:2013-10-17 06:11:03
【问题描述】:

在我的 android 应用程序中,我有一个包含许多按钮和微调器的布局。我还为各个屏幕尺寸(hdpi、xhdpi 等)添加了不同的布局。问题是在模拟器中使用Nexus S(表示为hdpi)测试我的layout-hdpi 时看起来不错,但是在使用Nexus One(也用hdpi 表示)进行测试时,按钮重叠? 在布局中,所有尺寸都在dp! 那么我不应该在 hdpi 中使用两个设备收到相同的结果吗?

【问题讨论】:

  • 有没有办法将 with 和 height 百分比设置为屏幕尺寸,例如按钮的宽度是 33%?
  • @wasp256 是的,使用带权重的线性布局将作为 %

标签: java android layout hdpi


【解决方案1】:

我遇到了同样的问题,你应该做的是获取屏幕高度:宽度比并将其命名为井比。 所以你的ratio = height/width 然后不要在 dp 中使用按钮或其他元素的确切大小,而是以元素在视图中占据的部分的形式获取大小。

我想我把你弄糊涂了,但这很容易,例如:

如果您想在屏幕的上半部分添加图像,则不要说 height=150dp 或 width=200dp,您的屏幕高度为 h,因此您的图像高度为 h/2,然后您的宽度为小时/比率。

这也适用于横向模式,您不必在横向模式下找到按钮,因为它们不在屏幕上。

【讨论】:

  • 所以我必须在 java 中设置所有尺寸而不是在 layout.xml 文件中,对吗?
  • 是的,我知道这不方便,但如果你想保持比例,这是你唯一能做的事情。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-20
相关资源
最近更新 更多