我们如何以圆形格式显示UIButtons,以便在我们点击时
特别是UIButton
它会移到中间位置吗?
答案 0 :(得分:2)
您可以使用touch recognition gesture
,也可以只使用 clearcolor 背景将UIImage
以及少数自定义UIButton
自定义。
对于中心图片,您只需根据所选按钮更改UIImageView
中的图片。
修改强>
解决方案2:
#import <QuartzCore/QuartzCore.h>
myButton.layer.cornerRadius = 8;
答案 1 :(得分: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:这个代码是一个完整的圆形,如果你的是半圆形,你应该用自己来计算角度,这很容易