我有一个位于两个文本视图之间的搜索栏,但它没有按要求显示。下面是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>
上面的结果就像一个观点
然而,这是理想的结果
我哪里错了?我不想硬编码seekbar的layout_width,应该改变什么?
答案 0 :(得分:4)
使用** android:weightSum 和 android: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>
答案 1 :(得分: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>
答案 2 :(得分:0)
将以下属性分配给搜索栏。
android:layout_width="0dp"
android:layout_weight="1"
此处TextViews会自行封装,搜索栏将占用最大宽度。