如何在iPhone上使用活动指示器视图?

如何在iPhone上使用活动指示器视图?,iphone,android-activity,indicator,Iphone,Android Activity,Indicator,活动指示器视图在许多应用程序中都很有用。 有没有关于如何在iPhone上添加、激活和取消活动指示器视图的想法 这里欢迎所有的方法。关于这方面的文档非常清楚。它是UIView子类,所以可以像其他视图一样使用它。启动/停止使用的动画的步骤 [activityIndicator startAnimating]; [activityIndicator stopAnimating]; 看看开源WordPress应用程序。他们创建了一个非常可重用的窗口,用于在应用程序当前显示的任何视图之上显示“正在进行的

活动指示器视图在许多应用程序中都很有用。 有没有关于如何在iPhone上添加、激活和取消活动指示器视图的想法


这里欢迎所有的方法。

关于这方面的文档非常清楚。它是UIView子类,所以可以像其他视图一样使用它。启动/停止使用的动画的步骤

[activityIndicator startAnimating];
[activityIndicator stopAnimating];

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

您需要的文件是:

  • WPActivityIndicator.xib
  • RoundedRectBlack.png
  • WPActivityIndicator.h
  • WPActivityIndicator.m
然后,要显示它,请使用以下内容:

[[WPActivityIndicator sharedActivityIndicator] show];
并隐藏:

[[WPActivityIndicator sharedActivityIndicator] hide];
创建:

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]; 
停止:

最终完成后,将微调器从视图中移除并释放。

关于:


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

请注意,如果您确实使用此代码,则必须将所有源代码提供给您自己的应用程序,以供任何请求它的用户使用。您需要知道,他们可能会决定重新打包您的代码,并在商店中自行销售。这一切都是根据GNU通用公共许可证(GPL)的条款规定的


如果你不想被迫打开源代码,那么你不能使用wordpress iphone应用程序中的任何内容,包括引用的活动进度窗口,而不强制GPL应用于你自己的程序。

我认为你应该更好地使用隐藏

activityIndicator.hidden = YES
使用故事板-

创建-

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

  • 转到头文件并为UIActivityIndicatorView创建IBOutlet-

     @interface ViewController : UIViewController
    
         @property (nonatomic,strong) IBOutlet UIActivityIndicatorView *activityIndicatorView;
    
     @end
    
  • 建立从插座到UIActivityIndicator视图的连接

开始:

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

停止:

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


活动指示器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];}

谢谢,这正是我想要的。请注意,WPActivityIndicator已重命名(并重构)为WPProgressHUD(请参阅)。sharedActivityIndicator在链接中未找到该类Methodos方法。如何自动使微调器居中?[spinner停止动画制作];不隐藏加载。我仍然可以看到正在加载的动画。@AdilMalik set spinner.hidesWhenStopped=YES@JuJoDi实际的问题是,我的
Create
微调器代码被调用了不止一次,而隐藏微调器的代码只被调用了一次。我必须检查微调器是否已经可见并设置了动画,不要运行
Create
微调器代码。这解决了我的问题。我找到了如何为它提供自定义颜色,这将设置一个很好的模式指示器。它很容易实现。
 [self.activityIndicatorView startAnimating];
 [self.activityIndicatorView stopAnimating];
@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"];
    }
}