我们如何以圆形格式显示 UIButton,以便当我们单击某个特定按钮时UIButton
它会移动到中间位置?
问问题
1712 次
2 回答
2
您可以使用touch recognition gesture
,也可以简单地将自定义设置和使用clearcolor背景UIImage
的少数自定义设置。UIButton
对于该中心图像,您可以根据所选按钮简单地更改图像。UIImageView
编辑:
解决方案2:
#import <QuartzCore/QuartzCore.h>
myButton.layer.cornerRadius = 8;
也看看这个帖子。 在 iphone sdk 中将固定大小的圆形按钮设置为图像
于 2013-03-15T08:04:03.363 回答
2
创建按钮:
double perAngle = 2 * M_PI / BUTTONS_COUNT;
for (int i = 0; i < BUTTONS_COUNT; i++) {
UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(sin(perAngle * i) + basePoint.x, cos(perAngle * i) + basePoint.y, yourWidth, yourHeight)];
[btn addTarget:self action:@selector(moveButton:) forControlEvents:UIControlEventTouchUpInside];
[yourView addSubView:btn];
}
移动按钮:
- (void)moveButton:(UIButton *)btn
{
[UIView animateWithDuration:2.0 animations:^{
btn.center = basePoint;
}];
}
这basePoint
是您的通告中心点。它只是一个演示代码,您应该处理后退和异常等。
PS:这段代码是一个整圆,如果你的是半圆,你自己计算角度,很容易
于 2013-03-15T08:31:08.963 回答