删除SeekBar中的顶部和底部填充

时间:2017-10-20 10:44:18

标签: android xml user-interface layout audio-player android-music-player

我正在尝试制作一个简单的音乐播放器。当我尝试在我的音乐播放控制部分中使用android的默认搜索栏时,搜索栏的顶部和底部有一个默认填充。我试图实现的效果类似于穿梭音乐播放器中使用的搜索条。

enter image description here

但这就是我得到的效果。如果有人告诉我如何达到预期的效果,我将不胜感激。我使用线性布局作为根容器。
enter image description here

1 个答案:

答案 0 :(得分:1)

因为指定了

的选项
android:background="@color/your_colour"

不起作用,因为你有两种颜色,其中一种用于顶部,一种用于底部。

工作解决方案是使用层列表,如下所示:
转到你的drawable文件夹,创建一个文件调用吧 back_ground_seek_bar.xml并在其中添加以下代码:

    <?xml version="1.0" encoding="utf-8"?>
    <layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
      <item android:bottom="10dp">
        <shape android:shape="rectangle" >
          <size android:height="10dp" />
          <solid android:color="@colour/your_top_color" />
        </shape>
     </item>

    <item android:top="10dp">
       <shape android:shape="rectangle" >
         <size android:height="10dp" />
         <solid android:color="@color/your_bottom_color" />
       </shape>
    </item>
  </layer-list>

粘贴时,用您自己的颜色替换颜色。 请记住,我们已将顶部和高度添加为10.但是因为我们希望我们的SeekBar有颜色,所以我们必须将搜索栏的高度设置为值的两倍,因此应该是两倍,即20dp。因此我们应该将搜索栏的新高度添加为20dp,并将背景设置为我们定义的xml,如下所示。转到您的SeekBar并粘贴:

    android:layout_height="20dp"
    android:background="@drawable/back_ground_seek_bar"

对于自定义,您还可以在height中更改drawable/back_ground_seek_bar.xml的值,但它应始终为两倍。 SeekBar目标中设定的给定高度是将其平均分配。