我正在使用一个SeekBar
完美无缺的作品。但我想增加进度条的高度,因为原生高度没有那么高。
那么如何动态或通过 XML 更改进度条的高度呢?
您可以通过 XML 执行此操作。
它会在您的应用程序中正常工作。在您提到进度条标记的 XML 中进行这个简单的集成。
首先,您需要在项目的 values->styles.xml 中定义进度条的样式。就像是:
<style name="tallerBarStyle" parent="@android:style/Widget.SeekBar">
<item name="android:indeterminateOnly">false</item>
<item name="android:progressDrawable">@android:drawable/progress_horizontal</item>
<item name="android:indeterminateDrawable">@android:drawable/progress_horizontal</item>
<item name="android:minHeight">8dip</item>
<item name="android:maxHeight">20dip</item>
</style>
将 maxHeight 编辑为您想要达到的高度。
然后在你的 ProgressBar 添加:
android:style="@style/tallerBarStyle"
它将完美地工作。
您必须为所有方向添加一些填充,并设置 SeekBar 的最小和最大高度。
这是我使用的一个示例:
<?xml version="1.0" encoding="utf-8"?>
<SeekBar xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:progressDrawable="@drawable/custom_player_seekbar_background"
android:paddingTop="10dp"
android:paddingBottom="10dp"
android:thumb="@drawable/bt_do_player"
android:paddingLeft="30dp"
android:paddingRight="30dp"
android:minHeight="6dp"
android:maxHeight="6dp"
android:layout_centerVertical="true"/>
要创建自定义搜索栏,请在您的xml 文件中添加以下代码:
<androidx.appcompat.widget.AppCompatSeekBar
android:id="@+id/seek_homelayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/_10sdp"
android:maxHeight="8dip"
android:minHeight="8dip"
android:progressBackgroundTint="@color/thumb"
android:progressDrawable="@drawable/sb_progress_drawable"
android:progressTint="@color/black"
android:secondaryProgressTint="@color/colorPrimary"
android:thumb="@drawable/sb_thumb"
android:thumbTint="@color/colorPrimary" />
在drawable中创建sb_progress_drawable.xml文件:
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:id="@android:id/background">
<shape android:shape="rectangle">
<solid android:color="#26FFFFFF"/>
</shape>
</item>
<item android:id="@android:id/secondaryProgress">
<scale
android:scaleWidth="100%" >
<shape android:shape="rectangle">
<solid android:color="#26FFFFFF"/>
</shape>
</scale>
</item>
<item android:id="@android:id/progress">
<scale
android:scaleWidth="100%" >
<shape android:shape="rectangle">
<solid android:color="#FFFFFF"/>
</shape>
</scale>
</item>
</layer-list>
如果你想在搜索栏上使用拇指,那么在你的 drawable 中添加sb_thumb.xml 文件:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="oval">
<size android:width="12dp"
android:height="12dp" />
<solid android:color="@color/colorPrimary" />
</shape>
你有maxHeigh
和minHeight
属性。此属性将确定搜索栏的高度。
android:maxHeight="3dp"
android:minHeight="3dp"
https://www.lvguowei.me/post/customize-android-seekbar-color/
干杯。
以上都不起作用,只需设置android:layout_height="10dp"
为您想要的任何值!
<SeekBar
android:id="@+id/seekBar"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="0dp"
android:layout_height="10dp"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent" />