精确视图定位

时间:2014-05-08 08:49:43

标签: android android-layout android-activity

我一直试图在过去一小时内在我的活动的特定位置放置View(确切地说ProgressBar),但无济于事。我的活动有一个背景图片,我需要将进度条与它对齐。这是对我需要的粗略估计:

*-----------------------*
|                       |
|       15% vertical    |
|                       |
|         XXXXX         |
|         XXXXX         |
|         XXXXX         |
|                       |
|                       |
|                       |
|                       |
|                       |
|                       |
|                       |
|                       |
|                       |
|                       |
*-----------------------*

我在这些问题中尝试了解决方案(123),但我遗漏了一些东西。这是迄今为止我提出的最新清单:

<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity" >

    <LinearLayout
        android:id="@+id/pager"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_margin="@dimen/activity_horizontal_margin"
        android:orientation="vertical" >

        <View
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="15" />

        <ProgressBar
            android:id="@+id/pbProgress"
            style="?android:attr/progressBarStyleLarge"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:indeterminate="true" />
    </LinearLayout>
</android.support.v4.widget.DrawerLayout>

但我的活动看起来像这样:

*-----------------------*
|                       |
|    20~25% vertical    |
|                       |
|                       |
|                       |
|                       |
|XXXXX                  |
|XXXXX                  |
|XXXXX                  |
|                       |
|                       |
|                       |
|                       |
|                       |
|                       |
|                       |
*-----------------------*

有人可以帮我调整一下进度条吗?

提前致谢

1 个答案:

答案 0 :(得分:2)

尝试将ProgressBar添加到权重布局中。

而不是

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

写下这样的东西:

<LinearLayout
  android:gravity="center_horizontal"
  android:layout_weight="85"
  android:layout_width="match_parent"
  android:layout_height="0dp">
   <ProgressBar
            android:id="@+id/pbProgress"
            style="?android:attr/progressBarStyleLarge"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:indeterminate="true" />
</LinearLayout>

更新:顺便说一下,而不是fill_parent更好地使用match_parent