[iPhone/iPad] メールの添付ファイルをアプリケーションで開けるようにする

iPad, iPhone/iPod touch No Comments »

iPhone や iPad のメールで添付ファイルをアプリケーションに取り込む方法です。

扱えるファイルを指定する

アプリケーションで扱えるファイルタイプを info.plist で指定します。例えば PDF を開けるようにしたい場合は以下のようにします。


続きを読む »

[iPhone/iPad] UIGestureRecognizer でジェスチャーを識別する

iPhone/iPod touch 7 Comments »

iOS3.2 で追加された UIGestureRecognizer を使うと様々なジェスチャーを簡単に識別することができます。ただし、iOS3.2 以降で利用可能なので使用する際には注意が必要です。iPad アプリなら問題ないです。識別できるジェスチャーは以下のとおりです。

  • タップ
  • ピンチ
  • パン(ドラッグ)
  • スワイプ
  • ローテイト
  • ロングプレス

続きを読む »

[iPhone] NSArray のソート方法

iPhone/iPod touch 5 Comments »

NSArray 内のオブジェクトの指定したメンバ変数でソートする方法です。

NSArray に複数の Book クラスが入っているとします。Book クラスは以下のようなメンバ変数を持っています。

@interface Book: NSObject {
  NSInteger no;
  NSString* furigana;
  NSDate* publish_date;
}

ソートするには NSArray 内のオブジェクトに NSComparisonResult を返すメソッドを作り、そのメソッド内で比較をします。
続きを読む »

[iPhone] アドレス帳からメールアドレスを選択させる

iPhone/iPod touch 2 Comments »

メール.app のようにアドレス帳からメールアドレスを選択させる方法です。大まかな仕様は、個人を選択させ登録メールアドレスが1つならそのまま登録されているメールアドレスを取得し、複数メールアドレスが登録されている場合は、登録されているメールアドレスを全て表示してどのメールアドレスを使用するかを選択してもらいます。
続きを読む »

[iPhone] あなたのアプリのアイコン、ぼやけてませんか?

iPhone/iPod touch 6 Comments »

えー、私のアプリのアイコンは見事にぼやけております。iPhone4 で採用された Retina Display。キレイですよね。ただし、気をつけないとアプリのアイコンがぼやけた感じになってしまいます。iPhone4 用に2倍の大きさのアイコンを作成しないといけないのです。当然といえば当然なのですが。。。
続きを読む »

[iPhone] MFMailComposeViewController で画像入りの HTML メールを送る

iPhone/iPod touch 1 Comment »

MFMailComposeViewController を使うと簡単にアプリ内から簡単にメール送信することができます。HTML メールも送信することが可能ですが、HTML で img タグを使うときには画像ファイルを Base64 エンコードする必要があります。

NSData+Base64

下記サイトの下の方にある NSData+Base64 のコードをダウンロードしてプロジェクトに追加します。
Cocoa with Love: Base64 encoding options on the Mac and iPhone
続きを読む »

[iPhone] Localized 時の小技

iPhone/iPod touch 4 Comments »

NSLog の文字列フォーマットは C言語の printf と同じです。この文字列フォーマットには引数を文字列内に入れる順番を指定することができます。

NSLog(@"%@, %@, %@", @"one", @"two", @"three");

上記の実行結果は “one, two, three” です。
次に下記のように実行すると
続きを読む »

[iPhone] UIWebView の表示内容をキャプチャして UIImage を生成する

iPhone/iPod touch 12 Comments »

UIWebView の表示内容を UIImage にして、表示する方法です。UIWebView を表示させずに、指定した URL のページ内容をレンダリングして UIImage を生成して、UIImageViw に表示します。スクリーンショットだけを取りたいときに使えます。

UIWebView はインスタンスを生成しただけでは、URL をロードしてもレンダリングされません。レンダリングするには UIWindow 内になければダメです。そのために実際には表示しない UIWindow を作成して、その中に addSubview します。
続きを読む »

[iPhone] UIWebView のタッチイベントを取得する

iPhone/iPod touch 5 Comments »

iPhoneSDK開発のレシピのレシピ47「UIWebView をフィンガージェスチャーで操作する」書かせていただいたのですが、この処理でプライベートAPI を使用しているために、以下のように修正しまさせていただきました。GitHub のサンプルコードでは既に先月修正済みなのですが正式にアナウンスしていなかったので、改めて説明させていただきます。

やりたいことは、Firefox などのマウスジェスチャーのように UIWebView をフィンガージェスチャーで操作するということです。UIWebView ではシングルタッチはスクロールや拡大縮小などがあるため、2本指でのタッチで左右にスワイプしたときに戻る、進むという動作をさせることにします。(フレーム内のスクロールに2本指でのタッチを使用しますが、まあその辺はとりあえず置いておいて下さい)
続きを読む »

[iPhone] UIWebView のリリース前に delegate に nil をセットする必要がある

iPhone/iPod touch 16 Comments »

UIWebView のインスタンスに delegate を指定している場合は以下のように release する前に delegate に nil をセットする必要があります。

- (void) viewDidLoad {
    webView = [[UIWebView alloc] init];
    webView.delegate = self;
    ....
}

- (void)dealloc {
    webView.delegate = nil;
    [webView release];
}

続きを読む »

WP Theme & Icons by N.Design Studio
Entries RSS Comments RSS ログイン