【问题标题】:Remove the top and bottom padding in a SeekBar删除 SeekBar 中的顶部和底部填充
【发布时间】:2018-04-01 12:43:27
【问题描述】:

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

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

【问题讨论】:

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


    【解决方案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 中的任何值,但它应该总是两次。 SeekBaraim 中设置的给定高度是平分它。

    【讨论】:

    • 但是搜索栏周围的顶部和底部空间有不同的颜色。在我的例子中,底部是橙色,顶部是白色。
    • 让我检查一下即使在 Java 代码中的解决方案。我会让你知道。当我编辑我的答案时
    • 我已经编辑了解决方案 @SnippyValson 检查更新的答案,看看它是如何工作的。
    • 我已经发布了你的答案,你似乎不在线!希望你回来后告诉我它是如何工作的!
    • 是的,我正在旅行。我会试一试,然后告诉你它是怎么回事。 :)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-13
    • 1970-01-01
    • 1970-01-01
    • 2019-12-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多