簡體   English   中英

如何在iPhone上使用活動指示器視圖?

[英]How to use activity indicator view on iPhone?

活動指示器視圖在許多應用程序中很有用。 有關如何在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
  • RoundedRectBlack.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左側的Project Navigator中找到),然后從對象庫中拖放“Activity Indicator View”。

對象庫中的活動指標視圖

  • 轉到頭文件並為UIActivityIndi​​catorView創建一個IBOutlet-

      @interface ViewController : UIViewController @property (nonatomic,strong) IBOutlet UIActivityIndicatorView *activityIndicatorView; @end 
  • 建立從Outlets到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 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM