【iOS開発】凝ったデザインの実装を簡単に片付ける方法
どうも、開発部のMです。
アプリ開発では「スッキリとしたデザインで、
なんだかよくわからないデザインのお願いをたま~
大抵の場合はリリースされているアプリやWebサイトでみたこと
アニメーションやら表示系に強かったり、
ネイティブで問題なく実現できるかと思います。
しかし、
わりと頭を抱えることになりやすい問題です。
本来であれば時間をしっかりとってしっかりとデザインを固めてい
時間がない場合はいっその事問題の表示部分をHTMLで作成して
HTMLならデザインサンプルが多いのでネイティブで作成すると
はじめから改善されていたりするので短時間で凝ったデザインを実
ということで、今回はHTMLを使用する際に必須の処理である
「ローカルHTMLを表示して、
サンプル
– (void)viewDidLoad {
[super viewDidLoad];
//ローカルに準備したhtmlのパスを作成
NSString *path = [[NSBundle mainBundle] pathForResource:@”index” ofType:@”html”];
NSFileManager *fileManager = [NSFileManager defaultManager];
//ローカルファイルの有無を確認(なくてもOK)
UIWebView *WebView =
[[UIWebView alloc] initWithFrame:
CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)
];
if (![fileManager fileExistsAtPath:path]) {
WebView.delegate = self;
[WebView loadRequest:[NSURLRequest requestWithURL:[NSURL fileURLWithPath:path]]];
}
[self.view addSubview:WebView];
}
#pragma mark UIWebView Delegate
//表示開始
-(void)webViewDidStartLoad:(
[UIApplication sharedApplication].
}
//表示完了
-(void)webViewDidFinishLoad:(
[UIApplication sharedApplication].
}
//失敗
– (void)webView:(UIWebView *)webView didFailLoadWithError:(NSError *)error {
[UIApplication sharedApplication].
}
//WebViewへのリクエストを受け取るメソッド
– (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(
navigationType:(
{
//
//例 お知らせの画面に画面遷移したい : callURL://apiMethodName=
NSString *urlString = [NSString stringWithFormat:@”%@”, [[request URL] absoluteString]];
if (/*指定のURLか?*/) {
/*
URLを元にiOS側の処理を記述する
パラメータによって動作を切り分ける
*/
return NO;//WebViewではリクエストURLを処理しない
}
return YES;//リクエストURLをWebViewで開く
}
サンプルの流れ
1.DidLoad:でローカルHTMLを表示する。
2.表示したHTMLであった操作(
3.shouldStartLoadWithRequest:
上記のサンプルようにHTMLとiOS側を繋げてあげればネイテ
しかし、
HTMLは表示まで時間がかかる上に見ればすぐにHTMLで表示
HTMLで実装した場合はその後のアップデートで少しずつでもネ
といったところで今回は以上です。