正在做一個自定義UIProgressView,看一下圖片:
我已經實現到這一步了,但是無論如何也不能讓圓球在開始處,
上圖所示的進度是15%,因此圓球就在當前的位置。
類似UISlider控件。至少包含 minValue, maxValue, value 等必須屬性
value 為當前控件的進度值,當value為0時在初始位置。 不知道你說的不能讓圓球在開始處為何不能實現。
該控件可根據方向(水平或垂直)來判定圓球是沿x軸水平移動或沿y軸垂直移動。
如果為水平方向,圓球的起始位置的x=0, 垂直方向,圓球的起始位置的y=0
-(void)setValue:(int)value {
_value=value;
CGFloat perValue=self.bounds.width/maxValue;
int x =(int)value*perValue;
circle.frame=CGRectMake(x,.....); //水平方向
[self setNeedsDisplay]; //如果是使用drawRect 繪制的話
}