我已经为我的 Android 应用构建了一个自定义搜索栏。
但是我很难调整 handle \拇指的大小和位置
因为我认为 attrubutes 指的是整个控件,我没有看到 xml 属性指的是拇指本身。
是否有任何 xml 方法来设置拇指(1)位置(2)大小和(3)填充?
我想也许可以通过代码来实现,但我不确定如何,我认为这是不太可取的
伪代码如下:
Drawable image = getResources().getDrawable(
R.drawable.pressed_state).setHight(20dp);
//how to set right padding?
myZoomBar.setThumb(image );
SeekBar 类中使用的拇指可绘制对象不是可拉伸(stretch)的 9Patch。这是一个简单的 png。
如果你想要一个可调整大小的拇指,要么:
- 只需创建一系列不同尺寸的缩略图并根据需要交换它们。
或
- 在您的自定义 SeekBar 中重写 onMeasure()、onLayout()、onDraw() 等,让它处理 9Patch 调整大小(您显然还必须提供自己的方法,例如 setScaleableThumbHeight( ) 和 setScaleableThumbWidth())。
注意:“填充”设置用于 View 任何内容的内部间距。在 Thumb Drawable 中填充实际上没有意义,除非您试图在 Thumb 中显示某些内容。 SeekBar 的填充定义了 Thumb 和 Track 外部的间距。
如您所知,您可以: - 使用继承自 ProgressBar 的 android:progress
属性设置进度(拇指位置) - 使用从 View 继承的属性来调整 SeekBar 的填充和大小。
我是一名优秀的程序员,十分优秀!