Amazon

ラベル iPhone の投稿を表示しています。 すべての投稿を表示
ラベル iPhone の投稿を表示しています。 すべての投稿を表示

2011年7月2日土曜日

[iPhoneアプリ開発]画像表示サンプルコード

iOSアプリで画像を表示するためのサンプルソースコード

手順を以下に示します。

1. Xcodeの新規プロジェクトの作成でView-based Applicationを選択
2. プロジェクト名は適当に(image)
3. Classesフォルダの中にimageViewController.h, imageViewController.mが自動で作られているので、以下で置き換える
----- imageViewController.h -----

#import <UIKit/UIKit.h>

@interface imageViewController : UIViewController {
    IBOutlet UIImageView *imageView;
}
@property (nonatomic,retain)UIImageView *imageView;
@end

----- imageViewController.m -----
#import "imageViewController.h"

@implementation imageViewController
@synthesize imageView;
- (void)viewDidLoad {
    [super viewDidLoad];
    NSURL *url = [NSURL URLWithString:@"http://www.hoge.com/hoge.png";];
    NSData *data = [NSData dataWithContentsOfURL:url];
    UIImage *image = [[UIImage alloc] initWithData:data];
    imageView.image = image;
}

- (void)dealloc { 
    [imageView release];
    [super dealloc];
}
@end

4. ResourcesフォルダのimageViewController.xibをダブルクリック
5. imageViewController.xibフォルダの中のviewをダブルクリックして背景がグレーのウィンドウを表示
6. メニューバーのtoolsからLibraryを選択し、Libraryウィンドウから"Image View"を上記のグレーのウィンドウ(view)にドラッグ&ドロップ
7. メニューバーのtoolsからInspectorを選択し、Inspectorが表示されたらimageViewController.xibフォルダの中のFile's ownerを選択する
8. Inspectorの上部左から2番目のタブのConnectionsを開き、Outletsの中から"imageView"の右にある+をドラッグしてviewウィンドウのUIImageViewと表示されている部分へドロップする
9. imageViewController.xibへの変更を保存する(command+s)
10. Xcodeに戻り"ビルドと実行"をクリックすれば、シュミレーターが立ち上がり画像が表示される


ポイントは
  • Xcodeではロジックを定義
  • Interface Builderではビューを定義
  • XcodeのロジックとInterface Builderでのビューを紐づけるためにimageViewController.hの変数宣言においてIBOutletという型で変数を宣言することでInterface BuilderのFile's owner(imageViewControllerクラス)のConnectionsビューに宣言した変数がリストされて、それを配置したImageViewなどの部品と紐づけている

iPhoneアプリ開発で利用できるライブラリ



画像処理系のライブラリ

MGImageUtilities

画像の切り抜き・リサイズ等できます。
 

XCode付属の公式ドキュメントにあるサンプルプロジェクト

例えばUICatalogとかですね。かなり参考になります。

Google Code Search

使い方のよく分からないAPIなどはここでググルと吉です。

Stack Overflow

ここでも結構定番の疑問が解決されます。

ASIHTTPRequest Documentation – All-Seeing Interactive

NSURLConnectionに不満をお持ちの方はこちらをどうぞ。おそらくその不満は解消されます。

OAuthConsumer

Objective-CでOAuthするときの定番です(たぶん)。これ一つ使えるようになっておけばOAuthに対応してるサービスをすべて自在に操れます。

mattgemmell/MGTwitterEngine – GitHub

定番のTwitterライブラリです。

Three20

Facebookのオープンソースプロジェクト。UI系が豊富です。

google-toolbox-for-mac

こちらはGoogle製。
基本的にMacのライブラリなんですが、iPhone用のもあったりする。




2011年1月20日木曜日

[iPhone] セルの削除を行えるようにする

セルの削除を行えるようにする

次に、編集モードで左側のマイナスボタンを押し、削除ボタンが押された時の反応を書きます。commitEditingStyle:forRowAtIndexPath:メソッドを以下のように変更します。


- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle
        forRowAtIndexPath:(NSIndexPath *)indexPath {
    if (editingStyle == UITableViewCellEditingStyleDelete) {
        [stringArray removeObjectAtIndex:indexPath.row]; // 削除ボタンが押された行のデータを配列から削除します。
        [myTableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
    } else if (editingStyle == UITableViewCellEditingStyleInsert) {
        // ここは空のままでOKです。
    }
}

[iPhone] ナビゲーションバーに編集ボタンを追加する

ナビゲーションバーに編集ボタンを追加する

ナビゲーションバーに編集ボタンを追加す るためのヒントはViewDidLoadにあります。UITableViewの使い方1でコメントはそのままにしておきましょうと言った2行です。 あの2行のうち、下の行のコメントを外せば編集ボタンがナビゲーションバーの右側に現れます。なおこのボタン、システム側で用意しているものなので、既に 多言語対応になってます。 英語ならEdit、日本語なら編集…と各言語で表記が変わります。自分でローカライズ対応する必要はありません。 ただし、Resourcesのinfo.plist(この場合標準だとTableTest-info.plistという名前になっているはずです)の Localization native development regionをJapanにするか、 ローカライズ対応言語の中に日本語を入れておくかの設定は必要です。ナビゲーションバーの 右側に編集ボタンが見えるはずです。
- (void)viewDidLoad {
    [super viewDidLoad];
    self.title = @"テーブル設定のテスト";
    self.navigationItem.rightBarButtonItem = self.editButtonItem;
}


Amazon3