Android Seekbar 值在某些设备上不会为负

Android Seekbar values not going to negative on some devices

我在 Android 应用程序中使用多个垂直搜索栏,使用 android:rotation=“270”。我已经设置了这些搜索栏的最小值和最大值,比如 -50 到 50。现在搜索栏在我的所有设备和模拟器上都可以正常工作,但它不会在某些设备上变为负值。如果我将 android:progress 设置为 -20,那么当应用程序启动时,seekbar 会在 -20 处显示它,但是一旦我将它移动到正值然后尝试返回,它就会卡在 0 上并且不会继续再往下。

没有直接的方法可以做到这一点,但是有一个技巧。如果您希望您的搜索栏从 -50 变为 +50,默认值为 0,只需创建一个带有文本字段的搜索栏,这样

android:min="0"; 
android:min="100";
android:progress="50";

现在设置文本字段的文本,当搜索栏的值为 50 时,文本字段的值为 0。所以现在当搜索栏为 0 时,文本字段将表示为 - 50。同样,您可以将值更改为您要在程序中使用的任何位置。