iPhone Indicator導入について
おはようございます。
西澤です。
涼しい日々が続いておりますね。
急な気候の変化にお体を壊さないようお気をつけ下さいね。
さて、本日はIndicatorのクラスファイルを作成しましたのでそれをご紹介したいと思います。
クラス・メソッドはIndicatorの表示と非表示です。
環境は以下です。
Xcode4.6.3
StoryBoard使用
ARC使用
基本的にはIndicatorの名前でファイルを作成しコピーアンドペーストで使っていたけると思います。
先に必要コードを書いておきます。
Indicator.h
作成時のポイントはビューにIDを振ることでビューの関連付けをしているところです。
非同期で読み込む際によく使うと思いますので良かったら参考にしてください。
本日はここまで
ありがとうございました。
西澤です。
涼しい日々が続いておりますね。
急な気候の変化にお体を壊さないようお気をつけ下さいね。
さて、本日はIndicatorのクラスファイルを作成しましたのでそれをご紹介したいと思います。
クラス・メソッドはIndicatorの表示と非表示です。
環境は以下です。
Xcode4.6.3
StoryBoard使用
ARC使用
基本的にはIndicatorの名前でファイルを作成しコピーアンドペーストで使っていたけると思います。
先に必要コードを書いておきます。
Indicator.h
#import <UIKit/UIKit.h>Indicator.m@interface Indicator : UIActivityIndicatorView{ UIActivityIndicatorView *indicator; UIView *loadingView; } #define INDICATORFLAG 1000 #define LOADINGVIEWFLAG 1001 -(void)showActivityIndicator:(UIView *)parentview; -(void)hideActivityIndicator:(UIView *)parentview; @end
#import "Indicator.h" @implementation Indicator - (id)initWithFrame:(CGRect)frame { self = [super initWithFrame:frame]; if (self) { // Initialization code } return self; } -(void)showActivityIndicator:(UIView *)parentview{ loadingView = [[UIView alloc] initWithFrame:parentview.bounds]; loadingView.backgroundColor = [UIColor blackColor]; loadingView.alpha = 0.5f; indicator = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge]; [indicator setCenter:CGPointMake(parentview.bounds.size.width/2, parentview.bounds.size.height/2)]; indicator.tag = INDICATORFLAG; [loadingView addSubview:indicator]; //親画面に追加する loadingView.tag = LOADINGVIEWFLAG; [parentview addSubview:loadingView]; [indicator startAnimating]; [UIApplication sharedApplication].networkActivityIndicatorVisible = YES; } -(void)hideActivityIndicator:(UIView *)parentview{ loadingView = (UIView*)[parentview viewWithTag:LOADINGVIEWFLAG]; indicator = (UIActivityIndicatorView*)[loadingView viewWithTag:INDICATORFLAG]; [indicator stopAnimating]; [loadingView removeFromSuperview]; [UIApplication sharedApplication].networkActivityIndicatorVisible = NO; } @end表示するときの呼び出しコード
[[Indicator alloc]showActivityIndicator:self.view];非表示にするときの呼び出しコード
[[Indicator alloc]hideActivityIndicator:self.view];
作成時のポイントはビューにIDを振ることでビューの関連付けをしているところです。
非同期で読み込む際によく使うと思いますので良かったら参考にしてください。
本日はここまで
ありがとうございました。