无法将TextView放在ProgressBar之上

时间:2013-10-17 14:44:29

标签: java android xml relativelayout android-progressbar

我有一个ProgressBar,它是一个上面有TextView的微调器,都在同一个relativelayout中。这些是ProgressBar和TextView的属性:

<TextView
    android:id="@+id/txtvStatusCircle"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@+id/progressCircle"
    android:layout_centerInParent="true"
    android:text="Preparing..."
    android:textSize="18dip" />

<ProgressBar
    android:id="@+id/progressCircle"
    style="?android:attr/progressBarStyleLarge"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true" />

在Eclipse显示的示例中,它看起来像我想要的方式,但是当我运行它时,TextView根本不会显示。我打破了这个想法!当我从TextView中删除上面的部分时,会显示它,但显然不在ProgressBar之上。 为什么不起作用?

3 个答案:

答案 0 :(得分:1)

你的XML代码对我有用。也许问题是别的吗?除此之外,我还将代码更改为以下内容:

 <ProgressBar
    android:id="@+id/progressCircle"
    style="?android:attr/progressBarStyleLarge"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true" />

<TextView
    android:id="@+id/txtvStatusCircle"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@id/progressCircle"
    android:layout_centerHorizontal="true"
    android:text="Preparing..."
    android:textSize="18sp" />

有什么区别?订单已更改,因此不需要“+ id”。将textSize限定符更改为sp(你应该总是使用它)并最终从TextView中删除“centerInParent”,因为当你说“在我的元素中心上面”时不需要这样做

答案 1 :(得分:0)

撤销订单(并删除layout_above上的+):

<ProgressBar
    android:id="@+id/progressCircle"
    style="?android:attr/progressBarStyleLarge"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true" />
<TextView
    android:id="@+id/txtvStatusCircle"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@id/progressCircle"
    android:layout_centerInParent="true"
    android:text="Preparing..."
    android:textSize="18dip" />

答案 2 :(得分:0)

首先将ProgressBar放在相对布局的正确位置。您可以通过添加一些其他对齐属性与它的父级,即您的相对布局来实现。然后使用相对于ProgressBar的属性添加TextView。