活动指示器视图在许多应用程序中都很有用。关于如何在 iPhone 上添加、激活和关闭活动指示器视图有什么想法吗?

这里欢迎所有的方法。

有帮助吗?

解决方案

创建:

spinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
[spinner setCenter:CGPointMake(kScreenWidth/2.0, kScreenHeight/2.0)]; // I do this because I'm in landscape mode
[self.view addSubview:spinner]; // spinner is not visible until started

开始:

[spinner startAnimating]; 

停止:

 [spinner stopAnimating];

当你终于完成,从视图中,并释放删除微调。

其他提示

看一下开源 WordPress 应用程序。他们创建了一个非常可重用的窗口,用于在应用程序当前显示的任何视图之上显示“正在进行的活动”类型的显示。

http://iphone.trac.wordpress.org/browser/trunk

您想要的文件是:

  • WPActivityIndi​​cator.xib
  • 圆角矩形黑色.png
  • WPActivityIndi​​cator.h
  • WPActivityIndi​​cator.m

然后要显示它,请使用以下内容:

[[WPActivityIndicator sharedActivityIndicator] show];

并隐藏:

[[WPActivityIndicator sharedActivityIndicator] hide];

在问候:

  

看一看开源WordPress应用。它们具有它们已经用于在任何的顶部显示型显示器的“进行中活性”创建了一个非常可重复使用的窗口中查看应用程序当前正在显示。

请注意,如果你这样做利用此代码,必须提供所有的源代码到自己的应用程序来请求它的任何用户。你需要知道,他们可能会决定重新包装你的代码,并出售它在商店本身。这是所有在GNU通用公共许可证的条款(GPL)规定。

如果你不想被迫打开你的源代码,那么你不能从WordPress的iPhone应用程序,包括,引用的活动进度窗口使用任何东西,而不强制GPL适用于你自己的。

在此文档是相当清楚的。这是一个UIView子类,所以你使用它像任何其他视图。要启动/停止使用动画

[activityIndicator startAnimating];
[activityIndicator stopAnimating];

使用故事板-

创造-

  • 转到 main.storyboard(可以在 Xcode 左侧的项目导航器中找到)并从对象库中拖放“活动指示器视图”。

Activity Indicator View from Object Library

  • 转到头文件并为 UIActivityIndi​​catorView 创建一个 IBOutlet -

     @interface ViewController : UIViewController
    
         @property (nonatomic,strong) IBOutlet UIActivityIndicatorView *activityIndicatorView;
    
     @end
    
  • 建立从 Outlet 到 UIActivityIndi​​catorView 的连接。

开始:

当您需要在实现文件(.m)中使用以下代码启动活动指示器时,请使用以下代码 -

 [self.activityIndicatorView startAnimating];

停止:

当您需要在实现文件(.m)中使用以下代码来停止活动指示器时,请使用以下代码-

 [self.activityIndicatorView stopAnimating];

我想你应该使用隐藏的比较好。

activityIndicator.hidden = YES

活动指示器2秒显示,并转到下一页

@property(strong,nonatomic)IBOutlet UIActivityIndicator *activityindctr;

-(void)viewDidload { [super viewDidload];[activityindctr startanimating]; [self performSelector:@selector(nextpage) withObject:nil afterDelay:2];}

-(void)nextpage{ [activityindctr stopAnimating]; [self performSegueWithIdentifier:@"nextviewcintroller" sender:self];}
- (IBAction)toggleSpinner:(id)sender
{
    if (self.spinner.isAnimating)
    {
        [self.spinner stopAnimating];
        ((UIButton *)sender).titleLabel.text = @"Start spinning";
        [self.controlState setValue:[NSNumber numberWithBool:NO] forKey:@"SpinnerAnimatingState"];
    }
    else
    {
        [self.spinner startAnimating];
        ((UIButton *)sender).titleLabel.text = @"Stop spinning";
        [self.controlState setValue:[NSNumber numberWithBool:YES] forKey:@"SpinnerAnimatingState"];
    }
}
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top