1
A
回答
4
做出UIView類的.h文件中
CGFloat startAngle;
CGFloat endAngle;
@property(assign) int percent;
聲明中的m級替換initWithFrame和方法的drawRect
- (id)initWithFrame:(CGRect)frame
{
self = [super initWithFrame:frame];
if (self) {
self.backgroundColor = [UIColor whiteColor];
// Determine our start and stop angles for the arc (in radians)
startAngle = M_PI * 1;
endAngle = startAngle + (M_PI * 2); }
return self;
}
- (void)drawRect:(CGRect)rect
{
NSString* textContent = [NSString stringWithFormat:@"%d", percent];
UIBezierPath* bezierPath = [UIBezierPath bezierPath];
// Create our arc, with the correct angles
[bezierPath addArcWithCenter:CGPointMake(rect.size.width/2, rect.size.height/2)
radius:130
startAngle:startAngle
endAngle:(endAngle - startAngle) * (percent/100.0) + startAngle
clockwise:YES];
// Set the display for the path, and stroke it
bezierPath.lineWidth = 20;
[[UIColor redColor] setStroke];
[bezierPath stroke];
// Text Drawing
CGRect textRect = CGRectMake((rect.size.width/2.0) - 71/2.0, (rect.size.height/2.0) - 45/2.0, 71, 45);
[[UIColor blackColor] setFill];
[textContent drawInRect: textRect withFont: [UIFont fontWithName: @"Helvetica-Bold" size: 42.5] lineBreakMode: NSLineBreakByWordWrapping alignment: NSTextAlignmentCenter];
}
在控制器的.h import CornerRadious並聲明
NSTimer *m_timer;
CornerRadious *cr;
在ViewDidLoadMethod中的.m類中
cr = [[CornerRadious alloc] initWithFrame:self.view.bounds];
cr.percent = 50;
[self.view addSubview:cr];
ASLO使加在這些方法
- (void)viewDidAppear:(BOOL)animated
{
// Kick off a timer to count it down
m_timer = [NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(decrementSpin) userInfo:nil repeats:YES];
}
- (void)decrementSpin
{
// If we can decrement our percentage, do so, and redraw the view
if (cr.percent > 0) {
cr.percent = cr.percent - 1;
[cr setNeedsDisplay];
}
else {
[m_timer invalidate];
m_timer = nil;
}
}
希望它的工作
相關問題
- 1. 如何設計半圓進度條
- 2. Android:半圓進度條
- 3. 半圓形進度條Android - 繪製半圓
- 4. 我如何設計Android的半圓形進度條?
- 5. 如何使用jQuery創建半圓進度條
- 6. 進度條實現
- 7. 如何實現自定義進度條
- 8. 如何使用TIdTCPClient實現進度條?
- 9. 如何在Ruby中實現進度條?
- 10. 如何實現循環進度條?
- 11. 如何在UIWebView上實現進度條?
- 12. 如何實現jQuery的PHP進度條
- 13. 如何使用GWT實現進度條?
- 14. 圓形進度條
- 15. 如何才能實現像蛋一樣的邊界半徑
- 16. 實現進度條Winform
- 17. 實現分段進度條
- 18. JQuery進度條實現
- 19. 進度條進度的邊框半徑
- 20. Xamarin.UWP:如何製作圓形進度條
- 21. 不同顏色的jQuery/CSS半圓進度條
- 22. 圓形半徑變化的Android進度條動態變化
- 23. 在java腳本和CSS中構建半圓進度條帶圓角和陰影
- 24. 圓形進度條css
- 25. 圓形邊框進度條
- 26. WPF:圓形進度條
- 27. 圓形進度條(css)
- 28. 帶圓角的進度條?
- 29. 彎曲圓形進度條
- 30. 圓形進度條Android
您是否嘗試過這個https://github.com/martinezdelariva/MRCircularProgressView? –
我沒有試過。但它會給出一些想法。謝謝@ ali59a。 – iTag
如何將它修改爲「半圈進度」@ ali59a – iTag