Wednesday, August 7, 2013

[iPhoneアプリ]画像を縮小する

iPhoneの画像をサーバーに保存する際に画像サイズが大きくなってしまうので、iPhone側で画像を縮小しようと思います。


// 横200pxの画像にtrim
- (UIImage *)trimImage:(UIImage *)image {
    UIImage *trimmedImage;
    float ratio = image.size.width / 200;
    
    CGSize sz = CGSizeMake(image.size.width * ratio,
                           image.size.height * ratio);
    UIGraphicsBeginImageContext(sz);
    [image drawInRect:CGRectMake(0, 0, sz.width, sz.height)];
    trimmedImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    
    return trimmedImage;
}

このリンク先がとても役立つ→http://iphone-tora.sakura.ne.jp/uiimage.html

Monday, August 5, 2013

データを読み込むときのロード画面を作る

前回の更新から長らく時間が空いてしまいましたが、最近は開発を再会しております。

今回はデータを読み込むときの待機画面を作ってみましょう
これです


こんな感じに書けばOKです。
下のviewへのタッチイベントも吸収してくれます

    UIView *loading_view = [[UIView alloc]initWithFrame:self.view.bounds];
    loading_view.backgroundColor = [UIColor colorWithRed:0 green:0 blue:0 alpha:0.5];
    
    UIActivityIndicatorView *indicator = [[UIActivityIndicatorView alloc]initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
    indicator.center = CGPointMake(loading_view.bounds.size.width / 2, loading_view.bounds.size.height / 2);
    
    [indicator startAnimating];
    [loading_view addSubview:indicator];
    
    [self.view addSubview:loading_view];


あとちゃんと読み込んでるよーとユーザーに伝えるために、上のちっちゃいくるくるも動かすと良いですね。これです。

    [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:YES];
    [[UIApplication sharedApplication] setNetworkActivityIndicatorVisible:NO];