Iphone 将不能被10整除的数字映射到UIProgressview

Iphone 将不能被10整除的数字映射到UIProgressview,iphone,ios,objective-c,uiprogressview,Iphone,Ios,Objective C,Uiprogressview,我正在使用两个视图开发一个iPhone应用程序。问题是,显示5/100或5/10的进度非常简单,但为了显示5/16的进度,我需要更改进度视图的最大值。我似乎找不到一个我认为它叫做property of progress的视图,我可以使用它。例如,类似.maximumValue的内容。非常感谢您的帮助,谢谢 UIProgressView的进度属性从0到1 所以它需要按照你的最大值来划分 例如,如果在应用程序中,最大值为23,则代码应如下所示: float progressValue = <A

我正在使用两个视图开发一个iPhone应用程序。问题是,显示5/100或5/10的进度非常简单,但为了显示5/16的进度,我需要更改进度视图的最大值。我似乎找不到一个我认为它叫做property of progress的视图,我可以使用它。例如,类似.maximumValue的内容。非常感谢您的帮助,谢谢

UIProgressView的进度属性从0到1

所以它需要按照你的最大值来划分

例如,如果在应用程序中,最大值为23,则代码应如下所示:

float progressValue = <Actual Value> / 23.0;

[myProgressView setProgress: progreassValue];
有关更多详细信息,请参阅

UIProgressView progress属性的变化范围从0表示完全没有进展到1表示一切都已完成

因此:

或者,要设置新进度的动画,请执行以下操作:

[self.progressView setProgress:5.0/16.0 animated:YES];
从技术上讲,progress属性是一个float,因此可以说是5.0f/16.0f以节省几纳秒。但是,您可能没有经常更新属性,因此这一点很重要。

由于ProgressView progress属性的类型为float,您可以按如下方式使用类型转换:

int value=5;
int MaxValue=15;
float Progress=(float)value/MaxValue;
[self.myProgressview setProgress:Progress animated:YES];

int MAXVALUE=16;progressView.progress=5/最大值@lakesh,这会将进度设置为零,因为您正在执行整数除法。@robmayoff,谢谢。我也犯了一个错误这里有什么问题。属性无论如何都是一个浮点值,是介于0和1之间的一种前切分值,类似于UIView的.alpha属性或从rgb值创建UIColor时的每个颜色组件值。只要确保它确实是一个浮点,而不是一个整数计算。如果是常数,则按16.0f进行偏差,或将其分配给浮点,或使用NSNumber的floatValue方法。严格来说,16f或16.0应该可以,但16.0f是相当传统的。
int value=5;
int MaxValue=15;
float Progress=(float)value/MaxValue;
[self.myProgressview setProgress:Progress animated:YES];