0

描かれた最初の円 (最も内側の円) は問題ありませんが、次第に円が小さくなっていきますか? これは反復と関係があるに違いないことはわかっています。

//LOAD CIRCLES

circleWidth = 100;
circleHeight = 100;

for (int i = 0; i < 4; i++) {
UIView *circleView = [[UIView alloc] init];
circleView.frame = CGRectMake(0, 0, circleWidth, circleHeight);
circleView.center = self.view.center;
circleView.alpha = 0.7;
circleView.layer.cornerRadius = 50;
circleView.backgroundColor = [UIColor clearColor];
circleView.layer.borderColor = [[UIColor whiteColor] CGColor];
circleView.layer.borderWidth = 3;
circleHeight += 50;
circleWidth += 50;

[self.view addSubview:circleView];
[self.view sendSubviewToBack:circleView];

}
4

3 に答える 3

2

cornerRadius を の少なくとも半分に設定する必要がありcircleHeightます。

circleView.layer.cornerRadius = circleHeight * 0.5f;
于 2012-08-21T19:48:02.663 に答える
2

circleView.layer.cornerRadius = 50 を実行する必要があるかもしれません。

于 2012-08-21T19:48:16.543 に答える
0

各反復で幅と高さを増やしていますが、cornerRadius幅と高さが 100 (最初の反復) の場合にのみ円になりますが、50 に固定されたままです。を に設定する必要がありcornerRadiusますcircleWidth * 0.5

于 2012-08-21T19:48:28.587 に答える