【问题标题】:Android View Design IssuesAndroid 视图设计问题
【发布时间】:2010-09-24 15:52:06
【问题描述】:

我一直在使用 Android 进行视图布局(比如说在 MainActivity 中),我希望使用 3 个 ImageView(其中每个块代表一个图像)来创建这种布局:

这很容易使用 LinearLayout,但前提是您指定每个 ImageView 的确切大小和位置。当查看不同的屏幕尺寸时,这显然会导致问题。

使用 AbsoluteLayout 一开始看起来可以工作,但我读到它已被弃用,并且仍然会导致不同屏幕尺寸的问题。

然后是RelativeLayout,我已经尝试将它与DroidDraw 一起使用,但是当我实现它时它似乎并没有让我走得太远:(

那么,有没有人知道如何实现这一点?

编辑:我已经接近使用dp 而不是px 来做到这一点,但是在使用更大分辨率的设备时这仍然会搞砸! :(

谢谢

【问题讨论】:

    标签: android xml user-interface


    【解决方案1】:

    Romain Guy 使用RelativeLayout 做了一些非常相似的事情。 Android Layout Tricks #1

    【讨论】:

      【解决方案2】:

      一种解决方案是您可以使用具有 2 列的 TableLayout,然后在第二列中嵌入第二个 TableLayout。

      DroidDraw 并不总是准确地显示它在 100% 的时间运行时的工作方式,我注意到了。

      【讨论】:

      • 是的,我也注意到了。我还注意到有一些你可以调用的 java 命令在 DroidDraw 中不能调用,例如设置比例类型。我将尝试 TableLayout 方法。谢谢
      • Yuk,相对布局和权重总是比 imo 表格更好用
      • 为什么它们更好?我将按照 arock 的建议尝试 Romain Guy 的布局技巧。
      【解决方案3】:

      您可以使用水平线性布局来做到这一点:首先添加绿色,然后为蓝色和橙色添加垂直衬里布局,并为每个布局赋予适当的权重(如 50 和 50)。

      【讨论】:

        【解决方案4】:

        您仍然可以使用 LinearLayout,但将宽度/高度设置为倾角单位。那样它在任何支持的屏幕尺寸上看起来都应该是一样的。或者,您可以改用 weight 属性,这对于这种情况可能是一个更好的主意。

        【讨论】:

          猜你喜欢
          • 2013-01-24
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-05-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多