1

我有一个位于两个文本视图之间的搜索栏,但是它没有按需要显示。下面是 XML

  <LinearLayout
    android:id="@+id/timerDisplay"
    android:layout_width="fill_parent"
    android:layout_height="80dp"
    android:orientation="horizontal" >

    <!-- Current Duration Label -->
    <TextView 
        android:id="@+id/songCurrentDurationLabel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="left"
        android:text="12.00"
        android:paddingLeft="15dp"
        android:paddingRight="15dp"
        android:textColor="#eeeeee"
        android:textStyle="bold"/>

    <SeekBar
        android:id="@+id/songProgressBar"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:progressDrawable="@drawable/seekbar_progress"
        android:thumb="@drawable/seek_handler" />

    <!-- Total Duration Label -->
    <TextView 
        android:id="@+id/songTotalDurationLabel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:gravity="right"
        android:text="10.00"
        android:paddingLeft="15dp"
        android:paddingRight="15dp"
        android:textColor="#04cbde"
        android:textStyle="bold"/>
  </LinearLayout>

上面的结果类似于 在此处输入图像描述

然而,这是想要的结果 在此处输入图像描述

我哪里错了?我不想硬编码搜索栏的 layout_width,应该改变什么?

4

3 回答 3

4

使用 **android:weightSumandroid:layout_weight**

<LinearLayout
    android:id="@+id/timerDisplay"
    android:layout_width="fill_parent"
    android:layout_height="80dp"
    android:orientation="horizontal"
    android:weightSum="100" >

    <!-- Current Duration Label -->
    <TextView 
        android:id="@+id/songCurrentDurationLabel"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:gravity="left"
        android:text="12.00"
        android:paddingLeft="15dp"
        android:paddingRight="15dp"
        android:textColor="#eeeeee"
        android:textStyle="bold"
        android:layout_weight="10"/>

    <SeekBar
        android:id="@+id/songProgressBar"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:progressDrawable="@drawable/seekbar_progress"
        android:thumb="@drawable/seek_handler"
        android:layout_weight="80" />

    <!-- Total Duration Label -->
    <TextView 
        android:id="@+id/songTotalDurationLabel"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:gravity="right"
        android:text="10.00"
        android:paddingLeft="15dp"
        android:paddingRight="15dp"
        android:textColor="#04cbde"
        android:textStyle="bold"
        android:layout_weight="10"/>
  </LinearLayout>
于 2013-10-04T07:15:52.913 回答
1

试试下面的代码:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/timerDisplay"
    android:layout_width="fill_parent"
    android:layout_height="80dp"
    android:orientation="horizontal" >

    <!-- Current Duration Label -->

    <TextView
        android:id="@+id/songCurrentDurationLabel"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:gravity="left"
        android:layout_weight=".40"
        android:text="12.00"
        android:textColor="#eeeeee"
        android:textStyle="bold" />

    <SeekBar
        android:id="@+id/songProgressBar"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="wrap_content"
 android:progressDrawable="@drawable/seekbar_progress"
        android:thumb="@drawable/seek_handler"  />

    <!-- Total Duration Label -->

    <TextView
        android:id="@+id/songTotalDurationLabel"
        android:layout_width="0dp"
        android:layout_weight=".40"
        android:layout_height="wrap_content"
        android:gravity="right"
        android:paddingLeft="15dp"
        android:paddingRight="15dp"
        android:text="10.00"
        android:textColor="#04cbde"
        android:textStyle="bold" />

</LinearLayout>
于 2013-10-04T07:14:51.633 回答
0

将以下属性分配给您的搜索栏。

android:layout_width="0dp"
android:layout_weight="1"

在这里,TextViews 将自行包装,并且 seekbar 将采用最大宽度。

于 2013-10-04T07:20:04.483 回答