【问题标题】:How to create rotating buttons?如何创建旋转按钮?
【发布时间】:2014-03-11 13:38:45
【问题描述】:

如何创建旋转按钮(请查看屏幕截图)?我想顺时针旋转所有按钮。如果我选择任何一个按钮,它将执行一些操作。我该如何处理这种设计?请提供任何这样的示例源代码(或)提供有关此任务的一些建议。 提前致谢。

【问题讨论】:

  • 注意动画下的UIButton不会响应用户点击
  • 按钮点击工作正常,但按钮标签在旋转按钮时发生了变化(更改按钮的层)。
  • “请提供任何示例源代码”,这不是 SO 的工作方式。您应该就您遇到的问题提出具体问题,我们可以帮助您解决问题。如果您希望有人为您的应用编写组件,那么您应该聘请承包商。

标签: ios iphone objective-c animation


【解决方案1】:

首先你在 viewdidload 中调用定时器:

NSTimer *timer1 = [NSTimer scheduledTimerWithTimeInterval:0.02f 
                      target: self 
                      selector: @selector(rotatethecircle) 
                      userInfo: nil repeats: YES];
[timer1 fire];

然后是定时器方法,要使用CGAffineTransform:

-(void)rotatethecircle{

    CGAffineTransform cgaRotate = CGAffineTransformMakeRotation(-angle*PHI);
    CGAffineTransform buttonRotate = CGAffineTransformMakeRotation(angle*PHI);

    viewRotate.transform = cgaRotate;
    buttonCircleFirst.transform = buttonRotate;
    buttonCircleSecond.transform = buttonRotate;
    angle=angle+4;

}

【讨论】:

    【解决方案2】:

    您可以实现 iCarousel 类并将按钮添加到旋转视图。它基本上可以用作表格视图,但也可以旋转单元格。您可以添加按钮而不是单元格,并以任何您想要的方式旋转它们。

    【讨论】:

      【解决方案3】:

      首先你需要容器​​视图来拥有你的所有按钮,然后你需要为容器上的每个按钮获取 x 和 y,方法是让 R 是从容器中心到按钮中心的半径和按钮之间的最小角度。
      这里有一个类似你想要达到的教程http://www.raywenderlich.com/9864/how-to-create-a-rotating-wheel-control-with-uikit

      【讨论】:

        猜你喜欢
        • 2019-04-07
        • 2021-03-17
        • 2023-03-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多