落書きノート

ふと自分が気になった事を書いてます

iOSアプリ Objective-C Xcode 簡易ブラウザ

Xcodeを使って簡易ブラウザを作りました。まあ、他のサイトにもいっぱいやり方は載っていますが、結構苦戦しました。AutoLayoutの扱い方にちょっと苦労したのと、NSURLに日本語が使えないことです。AutoLayoutはYoutubeの動画とかでやり方を見ました。後者のNSURLはGitHubに公開されている外部ライブラリを利用して解決しました。Punycode-Cocoaというライブラリですね。

#import <UIKit/UIKit.h>
#import "NSStringPunycodeAdditions.h"

@interface ViewController : UIViewController<UISearchBarDelegate>
@property (weak, nonatomic) IBOutlet UISearchBar *searchBar;
@property (weak, nonatomic) IBOutlet UIWebView *webView;

@end
#import "ViewController.h"

@interface ViewController ()

@end

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    _searchBar.delegate = self;
}

- (void)didReceiveMemoryWarning {
    [super didReceiveMemoryWarning];
}

- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar{
    [_searchBar resignFirstResponder];
}

- (void)searchBar:(UISearchBar *)searchBar textDidChange:(NSString *)searchText{
    NSString *searchEngineUrl = @"https://www.google.co.jp/search?q=";
    NSString *searchUrl = [NSString stringWithFormat:@"%@%@", searchEngineUrl, searchText];
    NSURL *Url = [NSURL URLWithString:searchUrl.encodedURLString];
    NSURLRequest *req = [NSURLRequest requestWithURL:Url];
    [_webView loadRequest:req];
}
@end

敷居が高いですが、慣れれば結構シンプルに出来るなという感じです。

7fe1f0a7-082a-7bf9-5164-2a794e1a6331