2012-01-01から1年間の記事一覧
Info.plist に "Fonts provided by application" で追加したカスタムフォントを、UIWebView で表示する web コンテンツから参照する方法です。 CSS の font-face で、次のように指定します。 @font-face { font-family: "{CSS内で使用する名前}"; src: local…
先日の記事で第2回勉強会向けに用意していた発表内容について書きましたが、本日(7/21)開催された第3回で発表の機会をいただいたので、資料とサンプルコードをアップデートして発表してきました。 iOS 5 から Accelerate.framework に追加された高速画像…
今回は従来のように github からソース一式をとってくる方式ではなく、インストールパッケージをダウンロードしてインストールする方式になったようです。 https://developers.facebook.com/ios/ で、インストールはさくっと終わったのですが、どこに何がイ…
UIWebView や UIWebViewDelegate には、ロードしてきたHTMLの内容を取得するためのプロパティやメソッドが見当たりません。 で、どうすればいいかというと、stringByEvaluatingJavaScriptFromString: メソッドで JavaScript を実行して、現在 UIWebView で表…
前回の記事で、Path や Facebook ライクなスライドメニューを実現するライブラリ7種類を比較し、ウォッチ数が多く最終更新日も比較的新しいことから、IIViewDeckController をチョイスしました。 こんな感じのUIが作れます。 ARC対応もしてあり、スライドメ…
リッチな GUI を簡単に実現するためのオープンソースシリーズ第3弾は、Facebook や Path でおなじみのアレです。 cocoa controls で facebook と入れて検索するだけでも、山ほど出てきます。 どれかに絞って使い方を紹介しようと思ったのですが、予想以上に…
先日の OGActionChooser に引き続き、オープンソースのUIコンポーネントの紹介です。 ソーシャルゲーム系のアプリでちょくちょく見かけるのが、スクロールするタブバー。 あまりわかりやすいUIとはいえないので、ネイティブ実装する場合にこのUIを採用するケ…
先日の記事の冒頭でも書きましたが、UIKit でサクッと動いて触れるものを使る場合に、UIButton の見た目の選択肢が RoundRect ぐらいしかないのはなかなか辛いものがあります。 そんな場合に役立つ、「画像素材なしでいい感じのボタンをつくれるライブラリ」…
たかがモック、されどモック。 モックといえど、RoundRect タイプのボタンを使用してたりするとどうにもテンションが上がらない、ということはよくあります。(僕はよくあります) そんなわけで、リッチな GUI を簡単に作れる系のUIコンポーネントをいろいろ…
Input クラスの location というプロパティを利用します。 http://unity3d.com/support/documentation/ScriptReference/Input-location.html Property for accessing device location こんな感じで位置情報をとれるようです。 ※Unity オフィシャルサイトのリ…
iOS SDK の UIKit に用意されているような UI を Unity でやるなら NGUI というプラグインが便利らしい、との噂を聞きつけたので、とりあえずググって見つけた日本語情報をまとめてみました。 ※Unity初日の初心者(1年程前にもちょっと触ったことはある)で…
めんどくさいタイトルですいません。。 僕がこの勉強会のATNDに気づいたころには120人の参加者枠もとっくにうまり、発表者枠も既に10人に達していたのですが、「時間がもし余ったら」と @k_katsumi さんの粋な計らいでLT補欠として参加させていただいた、と…
1年以上前にこちらの記事で Assets Library の読み込みを高速化する試行錯誤について書かせていただきましたが、そのときに作った『i走馬灯』という高速フォトビューアアプリを作り直して再リリースしました。 『i走馬灯 〜超高速フォトビューア』 ※無料です…
先日CLGeocoder を用いた逆ジオコーディングの記事を書きましたが、その結果得られる CLPlacemark 型の addressDictionary プロパティに入っている住所情報について、どのキーがどういう情報なのか、国ごとにどういう違いがあるのか、毎回調べるのが面倒なの…
Appleのドキュメントによると iOS 5.0では、MKReverseGeocoderとMKReverseGeocoderDelegateは非推奨になっているの で、新たにアプリケーションを開発する場合はCLGeocoderを使ってください。 とのことなので、逆ジオコーディングを CLGeocoder を使用してや…
UIView に用意されている画面遷移用エフェクトとして、カールアップ/ダウンやフリップ(クルッとまわる)以外にも、iOS4.0以降ではクロスディゾルブ(アルファで入れ替わる)も利用できます。 2つの UIView (下記サンプルでは fromView, toView)を用意し…
MKiCloudSync を使用すると、たった1行コードを追加しておくだけで、あとは自動的に NSUserDefaults の内容を iCloud に同期してくれます。 もともとシンプルな iCloud 同期ですが、もっとシンプルになるのでとりあえず iCloud 対応したい、ちょっと試してみ…
下記のような有名なログ出力マクロがありますが、 #ifdef DEBUG # define LOG_CURRENT_METHOD NSLog(@"%@/%@", NSStringFromClass([self class]), NSStringFromSelector(_cmd)) #else # define LOG_CURRENT_METHOD ; #endif これプラスアルファでちょっと便…
TestFlight SDK とか、クラッシュイベントを受け取って Stack Trace をレポートしてくれたりしますが、どうやるんだろう?と思い調べてみました。 クラッシュイベントを受け取って何かしたい場合は、 NSSetUncaughtExceptionHandler() にハンドラ関数のポイ…
Game Center の Leaderboard のスコアデータは、GKLeaderboard クラスを使用して直接とってくることができます。 アプリケーションでスコアデータを調べたり、独自の Leaderboard ビューを作成したい場合は、GameCenterから直接スコアデータをロードできます…
汎用ライブラリ等、ARCプロジェクトでも非ARCプロジェクトでも使用する可能性のあるクラスを実装する場合、 #if !__has_feature(objc_arc) - (void)dealloc { [super dealloc]; } #endif といった感じで "__has_feature(objc_arc)" を用いて判定を行いそれぞ…
単なる API Diffs ドキュメントの抜粋ですが、iOS 5.1 での iOS SDK API 変更点です。 AssetsLibrary ALAssetRepresentation.h Added -[ALAssetRepresentation dimensions] AudioToolbox AudioFormat.h Added kAudioFormatProperty_FormatIsEncrypted AudioU…
Xcode 4 で、 Edit Scheme → Debug を選択 → "Diagnostics" タブを選択 と進むと、下記のような設定項目が出てきます。 このうち、"Enable Zombie Objects" にはいつもチェックを入れるのですが、他のチェック項目はどういう効果があるんだろう?と思いつつ…
「iOSアプリにソーシャルサイトでのシェア機能を3行で簡単実装できる」という謳い文句で有名な ShareKit を初めて使ってみたのですが、ひっかかった部分や、ドキュメントに書いてなくてソースから汲み取った部分などあったので、諸々メモしておきます。 ソ…
クラス/オブジェクトが持つプロパティ情報を取得するには、Objective-C のランタイムにある、 objc_property_t *class_copyPropertyList(Class cls, unsigned int *outCount); を使用します。 また objc_property_t 型のプロパティ情報からプロパティ名を取…
ずっと見ようと思っていてなかなか見れてない WWDC の セッションビデオ。 とりあえず気になったものを列挙してみました。 数が多いのでまずは A〜I 編。 Advanced ScrollView Techniques Come learn about how to achieve the appearance of infinite scrol…
NSNotification, NSNotificationCenter を用いたオブジェクト間連携は使いやすいのでついつい多用してしまうのですが、具体的に内部でどのような処理が行われていて、パフォーマンス面での影響はどのくらいなんだろう、ということをイメージできずにいたので…
というタイトルで、はじめて Qiita に投稿してみました。 http://qiita.com/items/2269 (Twitter/Github/Hatena と同じ shu223 というIDです) ちなみにこんなコード。 + (void)startJump:(UIView *)view startPos:(CGPoint)startPos targetPos:(CGPoint)ta…
アプリを申請した数時間後に、AdMob SDK がアップデートされていたことを知り、(申請を取り下げてまで最新にする必要があるかどうか判断するために)更新内容について調べてみました。 こちらがリリースノート。 http://code.google.com/intl/ja/mobile/ads…
In-App Purchase がらみでリジェクトをいただいてしまい、修正バイナリをアップロードしたのですが、iTunes Connect の In-App Purchase 設定画面の Status のところが "Developer Action Needed" のままでした。 で、そのStatusを変更するボタンのような便…