ios - 从屏幕中心扩大一个圆圈
<p><p>我正在尝试将圆从零半径扩展到屏幕中心的预定义半径。代码如下</p>
<p>在 viewDidLoad 中:-</p>
<pre><code>- (void)viewDidLoad {
;
// Do any additional setup after loading the view, typically from a nib.
;
circleRadius = 0.0f;
circle = ;
;
.CGColor];
.CGColor];
;
;
;
}
- (void)animateImageView {
circleRadius += 70.0f;
;
}
- (void)drawCircleWithRadius:(CGFloat)radius {
CABasicAnimation *pathAnimation = ;
;//(id)circle.path
.CGPath];
;
;
];
circle.path = .CGPath;
circle.position = CGPointMake(CGRectGetMidX(self.view.frame)-radius, CGRectGetMidY(self.view.frame)-radius);
;
}
</code></pre>
<p>-animateImageView 在点击条形按钮时运行。
不知何故,动画不那么流畅,圆圈似乎没有从屏幕中心长出来。 </p>
<p>请指出代码中的错误。
谢谢。</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>试试下面的代码,这对我有用。我认为问题在于设置正确的路径。那么请问我是如何计算下面代码中的路径的。</p>
<pre><code>- (void)viewDidLoad
{
;
circleRadius = 200.0f;
CGPoint ptCenter = self.view.center;
circle = ;
circle.path = .CGPath;
.CGColor];
.CGColor];
;
;
//;
}
- (IBAction)onTap:(id)sender
{
;
}
- (void)animateImageView
{
circleRadius += 70.0f;
;
}
- (void)drawCircleWithRadius:(CGFloat)radius
{
CGPoint ptCenter = self.view.center;
CGRect rectBezierPath = CGRectMake(ptCenter.x - radius, ptCenter.y - radius, 2.0f * radius, 2.0f * radius);
CABasicAnimation *pathAnimation = ;
;
.CGPath];
;
;
];
circle.path = .CGPath;
;
}
</code></pre></p>
<p style="font-size: 20px;">关于ios - 从屏幕中心扩大一个圆圈,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/29893336/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/29893336/
</a>
</p>
页:
[1]