トップ «前の日記(2012-06-26) 最新 次の日記(2012-06-28)» 編集

Cocoa練習帳

iOS/iPhone/iPad/watchOS/tvOS/MacOSX/Android プログラミング, Objective-C, Cocoa, Swiftなど

2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|12|
2024|01|02|03|04|05|

2012-06-27 [iOS][Web]ネイティブWebアプリケーション(その3)

ほんの最初の一歩にしかならないと思うが。以前紹介したWebアプリケーションで、HTMLとObjective-Cでやり取りするのに挑戦した。

HTMLコンテンツにObjective-Cから値(日付)を設定する領域を用意する。

Date: <input name="demo" type="text"><br /> 

UIWebViewを管理するビューコントローラをUIWebViewDelegateに対応させる。

@interface ViewController : UIViewController <UIWebViewDelegate>
@end

デリゲートメッソドに、HTMLコンテンツの表題を取得するコードを追加する。

- (void)webViewDidFinishLoad:(UIWebView *)webView
{
    NSString    *title = [webView stringByEvaluatingJavaScriptFromString:@"document.title"];
    NSLog(@"%@", title);
}

デリゲートメッソドに、HTMLコンテンツの要素demoの値を書き換えるコードを追加する。

- (void)webViewDidFinishLoad:(UIWebView *)webView
{
    NSString    *date = [NSString stringWithFormat:
            @"document.getElementsByName('demo').item(0).value='%@'",
            [NSDate date]];
    [webView stringByEvaluatingJavaScriptFromString:date];
}

_ ソースコード

GitHubからどうぞ。
https://github.com/murakami/workbook/tree/master/ios/WebApp - GitHub

トップ «前の日記(2012-06-26) 最新 次の日記(2012-06-28)» 編集