ローディングアニメーションを表示したいビューがあります。ロードを示すために円形の画像を表示しているアプリケーションを見たことがあります。アクションはバックグラウンドで発生します。ここで達成したいことと同じです。IOS で組み込みのアニメーションを利用できますか?
ティア
ローディングアニメーションを表示したいビューがあります。ロードを示すために円形の画像を表示しているアプリケーションを見たことがあります。アクションはバックグラウンドで発生します。ここで達成したいことと同じです。IOS で組み込みのアニメーションを利用できますか?
ティア
シンプルに保ちたい場合は、UIActivityIndicator を使用できます。または、回転するホイールを表示するだけでなく、さまざまな機能を備えたオープンソースのアクティビティ インジケーターがたくさんあります。MBProgressHUDとSVProgressHUDは 2 つのきちんとした実装です。
YourViewController を作成し、MBProgressHUB ライブラリをプロジェクトに追加します (ここからライブラリを取得できます)。プロジェクトをダウンロードし、ライブラリをプロジェクトに移動します。
次に、次のコードを使用してタスクを達成できます。
YourViewController.h
#import <UIKit/UIKit.h>
#import "MBProgressHUD.h"
@interface YourViewController : UITableViewController <MBProgressHUDDelegate>
{
MBProgressHUD *hud;
}
YourViewController.m
#import "YourViewController.h"
@interface YourViewController ()
@end
@implementation YourViewController
- (void)viewDidLoad {
[super viewDidLoad];
[self initializeProgressLoading];
[self getObjects];
[hud hide:YES afterDelay:1];
}
-(void) initializeProgressLoading {
hud = [[MBProgressHUD alloc] initWithView:self.navigationController.view];
[self.navigationController.view addSubview:hud];
hud.delegate = self;
hud.labelText = @"Loading";
[hud showWhileExecuting:@selector(sleep) onTarget:self withObject:nil animated:YES];
}
- (void)sleep {
sleep(50000);
}
- (void) getObjects {
// connect to db and get all objects
//you can write any thing here
}
- (void)hudWasHidden:(MBProgressHUD *)hud1 {
// Remove HUD from screen when the HUD was hidded
[hud removeFromSuperview];
hud = nil;
}