Google のウェブログ公開ツールを使って、テキスト、写真、動画を共有できます。
前回は地図上にピンを落とす方法を紹介した。ピンをタップすると、吹き出しが表示される。今回は、この吹き出しをカスタマイズする方法を紹介しよう。これを使うことで、詳細情報などを表示させることができるだろう。 アノテーションビュー 地図上に表示する、ピンのようなものをアノテーションと呼ぶ、ということは前回説明した。アノテーションを表すMKAnnotationプロトコロルは、表示する情報を表すモデルとなるものである。 これに対して、実際に画面上に表示されるビューを表すクラスがある。MKAnnotationViewクラスだ。これはUIViewのサブクラスになっている。画面への表示をカスタマイズしたいときは、このアノテーションビュークラスを使うことになる。 アノテーションビューのカスタマイズの仕方は、2通りある。1つは、MKAnnotationViewのプロパティを使う方法だ。このクラスには、表示する
iPhone開発のメモです。import <Foundation/Foundation.h> @interface UIColor (Hex) - (UIColor *) initWithHex:(NSString *)hexString alpha:(CGFloat)alpha; @end @implementation UIColor (Hex) - (UIColor *) initWithHex:(NSString *)string alpha:(CGFloat)alpha { UIColor *color = nil; if (string && [string length] == 7) { NSString *colorString = [NSString stringWithFormat: @"0x%@ 0x%@ 0x%@", [string substringWithRan
無為空間 むいむい(´ω`*) Entries タイルビューの挙動確認用サンプル タグ: iPhone Objective-C Quartz layerClassがCATiledLayerなUIView継承クラスの挙動確認を目的に作成したクラス。 タイルごとにそのタイルの担当範囲やら拡大率やらを描画する。 @interface TiledView : UIView<UIScrollViewDelegate> @property (nonatomic, readonly) CATiledLayer *tiledLayer; @end @implementation TiledView /// @name TiledView //@{ - (CATiledLayer *)tiledLayer { return (CATiledLayer *)self.layer; } //@} /// @na
(参考) 無為空間 |タイルビューの挙動確認用サンプル CATiledLayerとUIScrollViewを組み合わせて、巨大な画像をスムーズにスクロールして表示するサンプルです。 表示する画像はこちらを使用しました。Garden | photo page - everystockphoto 画像の大きさは2448x3264です。 大きな画像を一度に読み込むとメモリが足りなくなるので、あらかじめ小さな単位に分割しておきます。 画像の分割はGraphicConverterなどを使用すると簡単です。 分割した画像を、画面に表示される部分だけ読み込むので、ファイル名を規則的に付けておきます。 GraphicConverterなら、自動的にimage-01-01.jpg, image-01-02.jpg, ...のような名前に自動的に付けてくれます。 今回は、タテ、ヨコそれぞれ10分割にしました。
第53回 社内勉強会に使用したテキストファイル「はじめての並行プログラミング(1)」 今回話すことスレッド? 並行プログラミングの難しさ 複数の仕事を同時に『並行プログラミング』とあるプログラムで何かの処理を同時におこないたい 方法は大きく分けて二つプロセススレッド(軽量プロセス)※ スレッド in プロセス の関係。プロセスとスレッドの違い(簡単に言えば)プロセスは「資源を共有しない」。スレッドは「資源を共有する」。スレッドが共有するもの メモリアドレス空間、ファイルハンドルなどスレッドが共有しないもの プログラムカウンタ、スタック、ローカル変数スレッドを使うメリットよいとこ 一つのプロセス内で並行処理が可能 非同期な処理とか 起動も低コスト データの同期が低コスト グローバル変数で受け渡しなどわるいところ 共有データの扱いが難しい(超重要)スレッドの安全性(safety)スレッドセーフ
この三ヶ月ではてなブックマークiPhoneアプリの新バージョンとAndroidアプリを開発してきました。 両方共担当はエンジニアid:ninjinkunとデザイナーid:kudakurage、総合ディレクションid:nagayamaです。同じ開発者がiPhoneアプリとAndroidアプリ両方を作った事例として、なかなか面白いのではないかと思います。開発期間はちょうどそれぞれ一ヵ月半ずつでした。 自分にとってもブクマチームに移動してから初めての大きな仕事だったので、両方共思い入れがあるプロダクトです。開発話と一緒に、スマートフォンアプリを作る際の流れや、気を付けていることなどをまとめようと思います。(長いです) 開発プロセス iPhoneもAndoirdも開発の流れは基本的に一緒で、以下のような流れになります。 機能の検討 UIの検討 実装 ざっくり並べただけではWebサービス開発と変わり
追記 定員に達したため、締め切りました。 たくさんのお申込みありがとうございました。 お申込みいただいた方へは別途ご連絡いたします。 キャンセルが多くなった場合は追加の募集をかけるかも知れませんので ハッシュタグ #nhntech をご覧いただければと思います。 -- こんにちは、運営担当の櫛井です。 先日ご案内した第4回NHNテクノロジーカンファレンスの参加募集を開始いたします。 イベント概要 開催: 第4回 NHNテクノロジーカンファレンス 主催: NHN Japan株式会社 日程: 2013 年 3 月 10 日(日) 時間: 14:30 〜 18:00 (14:00 開場 / 18:15 閉場) セミナー参加費: 無料 会場:NHN Japan 渋谷オフィス カフェスペース(渋谷ヒカリエ 27階) 懇親会: セミナー終了後開催(18:15〜) 懇親会会場: イベント会場と同じ 懇親
おつかれサマーです。開発部モバイルGの井上です。ケータイライブドアの各サービス、iPhoneアプリ開発等を担当しています。 さて、夏休みもあと数日になりました。全国の小学生の皆さんは、夏の宿題に追われている頃ではないでしょうか。 え、まだ手をつけてない? 大丈夫、たいていそんなものです。これからが勝負ですね。 たとえば昆虫採集なんか、比較的お手軽でよいんじゃないでしょうか。近くの公園で虫を捕まえて、お中元の箱かなんかに並べて学校に持っていけばオッケー。 ただ、研究テーマとしては古典的すぎて今さらという感じですね。虫をピンで刺すのもかわいそうだし。 そこで今回は、iPhoneアプリでいきもの図鑑を作ってみます。エコかつIT、スマートですね。 先生もびっくり、クラスのあの子にも超アピールです。 iPhoneアプリは、作り込みをはじめると時間がかかりますが、簡単なアプリなら工作感覚で手軽に組むこ
iPhoneのアプリにはTab Bar ControllerとNavigation Controllerを組み合わせたものがよくある。例えばiPodアプリ(iPod touchだと名前が違った気がするけどとにかく標準の音楽再生アプリ)。あれは起動すると、下に「プレイリスト」「アーティスト」とかTabが並んでる。で、そのTabのなかでリストをブラウズするのにはNavigation Controllerを使ってる。こういうインターフェースを作るには、Tab Bar Controllerの各TabにNavigation Controllerを入れればいい。 → けど、iPodアプリでちょっとデフォルトと違うのは、いざ曲を再生するときにはこのTabがすっと横に飛んで行く。まるでNavigation Controllerの中に入ってるように。これってどうやってやってるんだろう、自分のアプリでも使いた
2010年02月02日15:19 カテゴリiPhoneプログラム iPhone ようやく実現。タブバー上でトランジション効果を利用する。 これはマスター間近なアプリの画面(いいのか)。 4ページある画面を、画面下部にある4つのタブをタップすることで切り替えるようになってます。 これ、UITabBarControllerを使って実現してるんですが…切り替えが一瞬で、なんか面白みに欠けるんだよね。 せっかくのiPhoneなのにー。 なんかこう…! で、画面切り替え時にいい感じでトランジションアニメーションできないかと色々試行錯誤した結果。 できました! ちょっとトリッキーですが、UITabBarControllerDelegate のメソッドで処理します。 id tabSelectedView; - (void)tabBarController:(UITabBarController *)ta
iPhoneでもiOS4以降サポートされたGrand Central Dispatchを使うと、マルチスレッドを使ったプログラムが簡単に作れます。WWDC 2010のビデオ(#206, #211) を見て何となく判った気になったのですが、まだクリアでない点があったので自分でコードを書いてみました。 私の理解では、Grand Central Dispatch(GCD)はには マルチプロセッサを有効に使える、並列プログラムを簡単に書ける 操作性を高める、並行処理を簡単に書ける の2つの目的があると思います。ここでは 2. に付いて書きます。 1.については Wikipediaの The second exampleが参考になると思います。 今回のサンプル ここでは、Twitterのpublic timelineを取得し、つぶやきとアイコンを表示するプログラムを、スレッドをまったく使わないコード
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。 Tiwtterのクライアントアプリみたいに、TableViewでWeb上にある画像を各セルで表示したい。 しかし、馬鹿正直に「cellForRowAtIndexPath」関数内で「ImageView.image = Web上の画像」なんてやったら テーブルをスクロールしたタイミングで、新しく表示するセルに描画する画像データを取りに行ってしまうため なめらかなスクロールどころか、画像を表示する際に画面が固まってしまいます。 そこでテーブルをスクロールしたタイミングで、新しく表示するセルのImageViewにWeb上の画像を描画する処理をスレッドに登録(非同期に)することで、スクロール時に固まらなくなります。 下記サイト様が参考になります。 http://d.hatena.ne.jp
このアプリが使えます! http://jbullfrog.com/froglog/?p=323 人間の指先のサイズはiPhoneの画面上だと 44 × 44ピクセル (Retina Displayでは 88 x 88) の領域に相当. これ以下のサイズのボタンは避けるべし. 小さくて押せない!ということになりかねない. # iOS Human Interface Guidelineより http://blog.sallarp.com/iphone-ipad-appstore-like-uiscrollview-with-paging-and-preview/ main.mにつけたすといいのかも。アプリが立ち上がるたびにrandom()のシードが初期化される. int main(int argc, char *argv[]) { srand(time(NULL)); // ここ NSAuto
■ 自作のアプリケーションから、特定のWebページをSafariで開く NSURL *myURL = [NSURL URLWithString:@"http://d.hatena.ne.jp/iphone_dev"]; [[UIApplication sharedApplication] openURL:myURL]; ■ 自作のアプリケーションのURL schemeを指定する Info.pist内に、CFBundleURLTypesというDictionaryのArrayを用意。 各Dictionaryには、CFBundleURLName(reverse-DNSスタイルの一意な識別し)とCFBundleURLSchemes(schemeの文字列)を入れる。 CFBundleURLTypes CFBundleURLName jp.ne.hatena.iphone_dev.MyApp CFBu
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く