如何用旋转器替换圆形矩形按钮中的文本?

blr*_*rsk 4 objective-c uibutton xcode4

我有一个带有通用圆角矩形按钮的视图,它可以分割到另一个视图.当用户按下圆角矩形时,它会启动一个提取.我希望在处理提取时,使用旋转轮替换圆角矩形按钮内的文本("下一步").

我创建了微调器:

UIActivityIndicatorView *spinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
[spinner startAnimating];
Run Code Online (Sandbox Code Playgroud)

但我不知道如何使它替换圆角矩形按钮中的文本.

有什么建议吗?谢谢.

Mar*_*nny 7

像往常一样创建(或获取引用)按钮,然后在处理按钮单击时,创建微调器并将其设置为按钮的子视图.也许值得禁用按钮来停止多次点击.

以下几行应该可以解决问题:

  ...
  UIButton *button = [UIButton buttonWithType:UIButtonTypeRoundedRect];
  button.frame = CGRectMake(10, 10, 70, 40);
  [button setTitle:@"Next" forState:UIControlStateNormal];
  [button addTarget:self action:@selector(click:) forControlEvents:UIControlEventTouchUpInside];
  [self.view addSubview:button];
  ...

- (void)click:(UIButton *)button {
  [button setTitle:@"" forState:UIControlStateNormal];
  UIActivityIndicatorView *spinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
  [spinner startAnimating];
  spinner.frame = button.bounds;
  [button addSubview:spinner];
  button.enabled = NO;

  // do your actual work...
}
Run Code Online (Sandbox Code Playgroud)