2010年05月27日08:16 カテゴリiPhoneプログラム iPhone 間違いがちなタッチ処理を紐解いてみる なにげにひと癖あるiPhoneのタッチ処理。 XcodeのヘルプにもWeb上にも情報は豊富にありますが、そういう場所では表に出にくいノウハウ…というかメモ。 間違いだらけのピンチイン・アウト実装 -(void)touchesBegan:(NSSet *)touches { if([touches count] == 2) { // ピンチイン・アウトの処理開始 } } ↑は参考書などでよく見掛ける実装ですが… これではピンチイン・アウトの処理は出来ないので注意。シミュレータだと問題なく動くけどね。 なぜなら、ほぼ同時に2か所をタッチしない限りコメント部分を通らないから。さらに付け加えるなら、ほぼ同時に3か所タッチした場合にもコメント部分は通らない。 結果としてユーザーに「な
iPad の Safari で動作するマルチタッチ対応お絵描きソフトを作ってみた はいこんにちはー。お久しぶりです。珍しくフロントエンド側のネタで記事を書いてみます。 今回は革新的で魔法のようなデバイスであるところの iPad を使って、マルチタッチ対応お絵描きソフトを作ってみました。 iPad を持っていない人でも見れるように YouTube にビデオをアップロードしてみました。 実際のデモ (PC ブラウザでは動作しません。 Android でも動くかも?) ソースコード <!doctype html> <html> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width; initial-scale=1.0; maximum-scale=1.0; user-scalable=n
図形を描画するプログラムを作成する。 プロジェクトの作成 Xcodeで「GraphicsEx」という名前のCocoa Applicationプロジェクトを作成。 「HelloWorld」と同様に「GraphicsView.m/GraphicsView.h」を作成。 FrameworksにQuaartzCore.frameworkを追加。 「HelloWorld」と同様にインターフェイスの作成。 ソースコードの記述 GraphicsView.h #import <Cocoa/Cocoa.h> #import <QuartzCore/QuartzCore.h> //GraphicsEx(View) @interface GraphicsView : NSView { } //色の指定 - (void)setColor:(CGContextRef)c r:(float)r g:(float)
Cocoa touchフレームワークの一つ下に位置するCoreGraphics Frameworkを使って図形を表示してみたいと思います。 まずは、単純に円を表示してみよかなーと。 Delegate.mを以下のよーにしました。 TestView *testview = [[TestView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]]; //円をiPhoneに描くメセッドをコール [testview drawCircle]; [window addSubview:testview]; [window makeKeyAndVisible]; /*************************************** TestView.h ***********************************
アプリ起動時に、ムービーを表示していて、タッチしてスキップさせる方法がやっと分かりましたのでメモしておきます。 そもそも、MPMoviePlayerController の movieControlMode = YES にしておけばコントローラが出て「完了」ボタンを押せばよい話ですが、このコントローラを出したくないとき(movieControlMode = NO)に使えるのではないでしょうか。 参考にした書籍:iPhoneSDK開発のレシピ 今回はMPMoviePlayerController の上にUIViewを貼付けて、UIViewでタッチイベントを拾うようにします。 まず、起動時にムービーを表示させるのは、下記等を参考にしてください。 [iPhone] メディアプレイヤーで動画再生 ポイントは、keyWindowを取得して、それにUIViewをaddSubviewすることでした。 こ
Widgets and Live Activities Widgets are becoming even more powerful in even more places. Now you can use WidgetKit to build support for interactivity and animated transitions, so people can take action right in your widget. Once you rebuild for iOS 17, with just a few simple changes your existing widgets will look great in StandBy on iPhone, on the Lock Screen on iPad, and on the desktop on Mac. W
MPMoviePlayerController は便利クラスなのでほんとにわずかなAPIしか公開されていません。再生停止についても、それが動画の末尾まで行って停止されたのか、ユーザアクションによるものかがわからない作りになっています。 非公式ながら、一つの目安になる方法を見つけました。 まず、動画の再生はアプリの別Windowで実行されています。これは によれば一目瞭然で、普段の自分のWindow以外に UIEventObservableWindow というクラスのWindowが存在しています。 さて、こちらのWindowの階層構造を再生停止の notification 内でたどってみると、以下のようになりました。 UIEventObservableWindow MPBackstopView MPVideoBackgroundView UIView UIView MPVideoView U
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く