グループは有限のリソースのため、使用が終わったら必ず解放する必要がある。Objective-CandroidのEditTextクラスにはEditableインタフェースを経由して使うInputFilterインタフェースが用意されており、これを使って入力文字列のフィルタやバリデーションに使用することが出来た。[android]EditableとInputFilteriOSの場合、文字列自体を置き換え...UITextFiledにInputFilter風のバリデーションメソッドを追加する2012-11-13ブロックをプロパティとして扱うObjective-CAndroidの無名クラス、WindowsPhoneのラムダ(デリゲート)に慣れているプログラマはiOSに転向すると最初はそのような抽象がなくて絶望し、その後iOS4以降はBlocksが使えることに歓喜する。UIKitUINavigationControllerの制御下(遷移下)のUIViewControllerで処理が終了したのでビューを閉じようとしたのだが、全く反応が無い。UIKitは遷移元のビューのUINavigationController:navigationItem.titleをセットしないと表示されない。以前に紹介したように、タイトルをカスタマイズするために独自のラベル(UILabel)をUINavigationController:navigationItem.titleViewにセットしていても同じな...UINavigationController:navigationItemの戻るボタンのテキスト2012-11-09定数式が好きObjective-CObjective-Cの冗長さを知っているプログラマは最近※導入された定数記法と定数式が皆大好きだろう。CocoaNSObjectのクラスを判別するプロトコルメソッドが分からない。いうかすぐ分からなくなる。レシーバが引数のクラスもしくはその派生クラスのインスタンスの場合に真。4.5.1上でイニシャライザの引数(NSDictionary*型)に辞書リテラルの開始である@を入力した所だが、見た通りコンプリションが効き候補がホバーされている中にリテラル記述が選択できるようになっている。objective-candroidアプリケーションで便利な機能の一つに様々構造のxmlをデータソースとして使えることだ。arrays.xmlは配列構造のデータをデータソースとして供給できる。Xcode確かXcode4.3まではBOOL型の変数をウォッチしてもYES/NOとは表示されなかったはずだが(true/false)、きのせいかな。Objective-cXcode4.4ではデフォルトのコンパイラがLLVM4.0になり、数々の拡張が成されたことは既に書いた。解りやすいのは自動プロパティ(アクセサやフィールドを明示的に記述しない)の定義で@propertyと対になる@synthesizeを記述する必要がなくなったことだろう。Objective-C最新のXcode、StoryBoardを使用したUITableViewを使うケースでは上述したメソッドでは既にnilは戻らないと聞いていたのだが、実際にはnilが戻るのだ。nilが戻る原因が分からない。Prototypes"を選択できる。Objective-CiOSはlibsqlite3が用意されておりそのままSQLiteを使えるが、それでは面倒だということでfmdbを利用しているのは前にも書いた。GitHubこれで一気に作業効率アップしたのだが、やはりSQLを直に書くコーディングスタイルは必要だ。iOSJavaでよく使うイディオムとして、共通で使うオブジェクトをスタティックな定数として定義しておくものがある。publ...オブジェクト定数が欲しい2012-07-01UIColorを使いやすくするマクロObjective-CUIColorのイニシャライザの引数は実数(255を1.0とした割合を0.0〜1.0)で指定する。この方法だと直感的ではないし、何より非常に解りにくい。iOSFMDBを使って更に抽象度を上げたSQLiteのユーティリティを書いているのだが、以下のようなテーブルを削除するコードを書いても上手くいかない。iOS以前にバックグラウンドスレッドでタスクを動かすためにNSProxyのフォワーディングの機能を利用する例を書いたが、その後ARCならでは問題が発生して頓挫している。iOSARCの素晴らしい所はretain/releaseをコンパイラとランタイムが面倒を見てくれるお陰で、プログラマの負担が大幅に減ることだが、だからといってオブジェクトの参照と解放に対して無神経になって良い訳ではない。iOSではsqlite3.dylibが提供されておりその機能を使うことができるのだが、いわゆる"raw"でありお世辞にも使いやすいとは言い難い。そのような中、JDBC風の操作で使えるfmdbは非常に使いやすく、私も使用している。iOS今度はテスト時にこんなログが飛ぶようになった。同様の処理シーケンスで大量にリークしているようだ。嫌だなと思うのは、自分の書いたコードがトレース上に一切登場していない所。いうかlibxml2.2ということはNSXmlParserだろうか。このようなケースだとリークが発生...一難去ってまた一難2012-05-27設計変更Objective-C結果から書くとGCDを使った非同期処理で発生していたEXC_BAD_ACCESSは漸く解決することが出来た。原因はInstrumentでプロファイルした通りGCD、というかメインスレッド(UIスレッド)と別スレッドで動作するメソッドの戻り値の参照カウント。iOSむーん、わからんな。ゾンビになっていることだけは確実に判るんだが。いう場合、ARCをオフにした方が却って判りやすいのかもしれないな。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。