Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android从中间开始水平进度条_Android_Android Drawable_Android Progressbar - Fatal编程技术网

Android从中间开始水平进度条

Android从中间开始水平进度条,android,android-drawable,android-progressbar,Android,Android Drawable,Android Progressbar,我正在开发一个定制的Android小部件,它将正值和负值作为一个条。因为我使用的是股票外观,所以我想我应该扩展ProgressBar类,并将其用作我的小部件的基础。然而,我似乎找不到一种方法可以通过编程在条本身上获得一个句柄(与整个可绘制或整个画布相反),这样我就可以将Rect的开始设置在条的中间 我想要达到的效果是这样的(显示一个负值,如果它是正值,很明显它会朝相反的方向发展) 我已经重写了进度设置程序,以检查是否存储了负值: private boolean isNegative; @Ov

我正在开发一个定制的Android小部件,它将正值和负值作为一个条。因为我使用的是股票外观,所以我想我应该扩展
ProgressBar
类,并将其用作我的小部件的基础。然而,我似乎找不到一种方法可以通过编程在条本身上获得一个句柄(与整个可绘制或整个画布相反),这样我就可以将
Rect
的开始设置在条的中间

我想要达到的效果是这样的(显示一个负值,如果它是正值,很明显它会朝相反的方向发展)

我已经重写了进度设置程序,以检查是否存储了负值:

private boolean isNegative;

@Override
public void setProgress(final int progress) {
    isNegative = progress < 0;
    super.setProgress(Math.min(Math.abs(progress), this.getMax()));
}

@Override
public int getProgress() {
    return (isNegative ? -1 : 1) * super.getProgress();
}
私有布尔值为负;
@凌驾
公共无效设置进度(最终整数进度){
isNegative=进展<0;
setProgress(Math.min(Math.abs(progress),this.getMax());
}
@凌驾
public int getProgress(){
返回(为负?-1:1)*super.getProgress();
}

这真的只是画出了我想不出来的东西。这只需要针对最新的API(截至本帖19页)。

回答可能为时已晚,但您可以使用两个
ProgressBar
,使用
ProgressBar将第一个设置为从右向左。setRotation(180)然后单独处理它们,当您的状态发生变化时更新两者。

回答可能为时已晚,但您可以使用两个
ProgressBar
,使用
ProgressBar将第一个设置为从右向左。setRotation(180)然后单独处理它们,当您的状态发生变化时更新两者。

回答可能为时已晚,但您可以使用两个
ProgressBar
,使用
ProgressBar将第一个设置为从右向左。setRotation(180)然后单独处理它们,当您的状态发生变化时更新两者。

回答可能为时已晚,但您可以使用两个
ProgressBar
,使用
ProgressBar将第一个设置为从右向左。setRotation(180)然后独立处理它们,当您的状态发生变化时更新它们。

这并不是我想要的,但有时简单的黑客攻击并不是一件坏事。虽然听起来很傻,但我甚至没有想到要这样做(而且是完全定制的工作)。谢谢。这不完全是我想要的,但有时候简单的黑客并不是件坏事。虽然听起来很傻,但我甚至没有想到要这样做(而且是完全定制的工作)。谢谢。这不完全是我想要的,但有时候简单的黑客并不是件坏事。虽然听起来很傻,但我甚至没有想到要这样做(而且是完全定制的工作)。谢谢。这不完全是我想要的,但有时候简单的黑客并不是件坏事。虽然听起来很傻,但我甚至没有想到要这样做(而且是完全定制的工作)。谢谢