6

我有一个RelativeLayout(我没有结婚)和两个TextViews。我希望第一个的底部TextView与其父级的中心对齐,第二个的顶部与TextView其父级的中心对齐。

在此处输入图像描述

我在上图中的父级(垂直)中心放置了一条绿线。s目前TextView正好在正确的位置,但我这样做了,正如我将在下面描述的那样,将它们与父级对齐并知道父级的大小。

由于各种原因,我不能只使用一个TextView并将其居中。另外我不知道父级的高度,所以我不能将每个对齐到父级的顶部/底部并将它们向下/向上边缘以使它们居中。

我还尝试了另一个View占据一半高度的 be invisible,但layout_height不占百分比(或者至少它给了我错误)。

有什么想法可以做到这一点吗?

我是否应该将两个TextViews 放在另一个布局中并拥有该中心本身?

4

2 回答 2

21

创建一个以父级为中心并用作锚点的 0 高度视图。(为此使用该属性android:layout_centerVertical="true"。)将一个文本视图放置在锚点上方,另一个放在锚点下方。

于 2012-12-19T17:46:39.480 回答
2

我之前通过使用带有两个 TextView 的垂直 LinearLayout 解决了这个问题。

ps.:Android 设计指南http://developer.android.com/design/patterns/pure-android.html具体指出Don't use right-pointing carets on line items. 它可能不是您正在做的订单项,但如果是,请指出。

于 2012-12-19T17:53:41.917 回答