java - 如何制作上升(三角形)搜索栏Android
问题描述
我一直在做一个三角形的搜索栏。应该是这样。我见过这么多的搜索栏,但它们都一样,水平的,有一些小的变化。但是三角搜索栏我没见过。也许有人遇到过这个问题,也许有新的解决方案,例如,使用相同的 Jetpack compose。
我现在能够做出这个决定。 但我真的不喜欢,几乎没有正常的滑块设置,还有拇指。当使用 sic bar 本身时,改变拇指非常困难或几乎不可能,有人能告诉我一个正常的解决方案吗:)
我的解决方案是基于使用 Android Studio 将图片分成 9 个补丁。然后将其用作 android:progressDrawable="@drawable/rising_seekbar"。所以我对更可定制和响应更快的东西感兴趣,一种基于代码的解决方案,我从未构建过自定义视图,所以我不知道该怎么做。
上升_seekbar.xml
<item android:id="@android:id/background">
<nine-patch
android:src="@drawable/slider_empty"
android:dither="true"/>
</item>
<item android:id="@android:id/progress">
<clip
android:clipOrientation="horizontal"
android:gravity="left">
<nine-patch
android:src="@drawable/slider_full"
android:dither="true"/>
</clip>
</item>
布局中的搜索栏
<SeekBar
android:id="@+id/text_size_sb"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="@dimen/margin_24dp"
android:layout_marginStart="@dimen/margin_12dp"
android:layout_marginTop="@dimen/margin_60dp"
android:layout_marginEnd="@dimen/margin_12dp"
android:max="64"
android:thumb="@drawable/seek_bar_thumb"
android:progressDrawable="@drawable/rising_seekbar"
android:splitTrack="false"
android:paddingStart="@dimen/margin_12dp"
android:paddingEnd="@dimen/margin_12dp"
android:progress="24" />
问题之一链接它还有更多,因为它是 xml。
解决方案
推荐阅读
- javascript - 将方法中声明的 JSON 对象数据发送到另一个页面
- gitlab - GitLab 页面可以用于审查 mkdocs 项目中的应用程序吗?
- javascript - Google Apps 脚本 - 仅在循环运行后设置行以完成
- sql - 仅对具有相同 ID 的先前行的值求和
- c# - Linq to SQL OrderBy 基于 DropDownList 中的选定值
- algorithm - 如何找出没有疯狂递归量的随机生成的先前值?
- javascript - 使用 Javascript 将文本插入 messenger.com 消息框
- javascript - 添加尚不存在的 Onclick 元素
- html - 收缩 flex-wrapped-children 以适应带有包装的父容器
- java - java - 如何从带有循环的dom元素中获取所有xml子元素?