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

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

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

enter image description here

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

最佳答案

因为指定的选项

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 有颜色,所以我们必须将 seekbar 的高度设置为该值的两倍,所以它应该是两倍,即 20dp。所以我们应该将搜索栏的新高度添加为 20dp,并将背景设置为我们定义的 xml,如下所示。转到您的 SeekBar 并粘贴此内容:

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

对于自定义,您还可以更改 height 的值以及 drawable/back_ground_seek_bar.xml 中的任何值,但它应该始终为两次。 SeekBar中设置的给定高度,目的是将其平分。

关于android - 删除 SeekBar 中的顶部和底部填充,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46847490/

相关文章:

java - 在我的例子中,只需要在我的 ListView 中显示一个对象(只有标题)

android - 将移动应用程序同步到 Android Wear

android - 构建每个像素在 flutter 术语中意味着什么

python - 如何在 Python 中使用 OpenSSL 从 pfx 文件中提取 key ?

java - 如何删除 GridBagLayout 的行

javascript - pip.io UI 是在什么地方构建的?

C# 透明图形用户界面

android - 当我打开手机照片时,选择一个以使用小米 MIUI 强制关闭应用程序,其他手机工作正常。谢谢你的建议?

c# - 使用属性和类的单个值将 C# 类序列化为 XML

c# - 如何从Web服务生成的客户端应用程序引用XML文件