2011-02-18 69 views
1

我正在努力解决Android上的布局问题。这在iPhone上非常简单,但可以使用各种屏幕尺寸和布局类。我很难做到这一点。在图像上方的Android布局

我注意到的一件事是,在xml中设置对象的背景确实会弄乱设备上的布局。我通常不得不放置一个FrameLayout和一个ImageView来获取背景。

所以我试图去做到这一点。 http://www.calidadsystems.com/images/AndroidListItem.png(对不起,我没有足够的点数发布图片)

他是状态视图,并且是列表视图中的项目。有8个TextView需要设置。 222个字段中的每一个都会改变。当前背景具有特定位置处的颜色,我正在尝试排列标签和TextView以获取下面的图片。我用AbsoluteLayout构建了这个不推荐使用的方法,但它在设备上也不能很好地工作。

我一直在与Android上的布局挣扎。有人有一些很好的示例代码可以做到这一点吗?

回答

0

你可能会想要使用RelativeLayout。您可以使用android:layout_alignTop =“id”属性使行正确排列。 android:layout_alignLeft =“id”为列。除此之外,它只是一个玩android:layout_marginLeft =“XXdip”属性的问题,以获得它们之间的空间。 Check out this page了解所有布局类型的概述和示例。 Here is some more示例RelativeLayout代码。另一个例子one more page。使用RelativeLayout有点棘手,但是一旦你使用了它很容易理解,并得到你想要的布局。它的好处是,当你以这种方式定义它们时,你的用户界面在几种不同的屏幕尺寸上看起来不错。

+0

我通过使用TableLayout解决了这个问题,然后删除了图像中的彩色背景,设置了TextView的背景颜色。\ n我发现使用倾角进行测量时会在我的Galaxy上产生偏斜。 \ n xdpi = 234.46153和ydpi = 236.27907。这导致图像在不同的屏幕上倾斜,并且对齐全部搞乱。所以在另一个布局上,我不得不求助于使用px而不是dip来让它布局正确。但是我知道,当它进入一个其他宽度为480的屏幕时,它将不会排队。 – 2011-02-20 18:23:47

0

为什么不只是在表格布局中编排布局,并将表格布局的背景设置为您制作的定制图形?这应该适合你。具体来说,你的设计的设计就像4列x行。然后使用strechcolumn属性,你应该能够完成你正在尝试做的事情!

如果您正确缩放图形,那么您不应该总体出现此问题。

+0

不,我真的发现,如果我把让我们说一个480x100px的图形,并把它放在wrap_content中,x和y的不同dpi将实际上扭曲图像。我只用ImageView完成了这个任务,并在Galaxy上看到了结果。 – 2011-02-20 18:26:27