Objective-C

IB上に配置したオブジェクトに対応関係を持たせたい

試行錯誤中。よいプラクティスがあればコメントなどいただけると幸いです。たとえばIB上で(上層) Button A Button B Button C imageView A imageView B imageView C (下層)のように配置したとして、 buttonAをタップしたときにimageViewAになんらかの変化を…

NSPredicateで配列内の最大値・最小値を取る

NSPredicateとCocoa Predicatesを使って、配列内の最大値・最小値を取ってみました。@max, @minはKey-Value Coding時に使用できる関数で、NSDictionaryのようなKey-Value Objectが格納されている配列でしか使えないよう。 サンプル NSArray* dics = [NSArray…

iOSシミュレータでのデバッグができなくなった

3日前ほどから、XCodeからiOSシミュレータでアプリのデバッグができなくなって、本当に悩んでいました。 症状 error: failed to attach to process ID コンソールにこのエラーメッセージが表示されて(process IDは0ではない)、シミュレータはスプラッシュ画…

アプリ提出時にチェックすること

Archive、Distribution時に気にかけたところまとめ。 Summary→Entitlementsあたりの設定をチェック(iCloudを使用している場合) Build Settings→Code Signing→DistributionのProvisioningをチェック Edit SchemeでArchiveのBuild Configurationを"Distributio…

AutoLayoutを使用して要素の大きさを可変にする

XCode4.5の新機能AutoLayoutを使って、3.5インチ(~iPhone4S)と4インチ(iPhone5)に対応させようと四苦八苦してます。 できた。2つの要素を選択して、Editor->Pin->Vertical Spacingしたあと、大きさを変えたくないほうを選択してEditor->Pin->Heightでいける…

NavigationItemの戻るボタンのテキストを変更する

よく忘れては調べをくり返すので、書いておきます。小ビュー(遷移先)で設定するのではなく、親ビュー(遷移元)自身のbackBarButtonItemにセットします。 // 親ビューで戻るボタンを作成、テキストをセット UIBarButtonItem *backButton = [[UIBarButtonItem a…

iOS 5でアプリアイコンを非光沢に

iOSアイコンの光沢を消す("Icon already includes gloss effects")方法、従来はinfo.plist直下に足してたけど、iOS5からは"Icon files(iOS 5)">"Primary Icon"の下に置かないと認識してくれないみたい。2012-04-29 20:11:53 via Twitter for MaciOS4までは、…

failed to send the qLaunchSuccess packetエラー→iPhone再起動でなおるよ。

実機デバッグ中、実行時に"failed to send the qLaunchSuccess packet"というエラーが出て、 スプラッシュ画面から進まなくなってしまいました。クリーン/キャッシュ削除でもだめだったので、iPhoneを再起動したら無事に起動。

viewWithTagメソッドは入れ子になったビューにもアクセスできるみたい

きょうお邪魔したiOS勉強会議 #2にて、 「入れ子になったUIViewも、viewWithTagで親からアクセスできるのか」と疑問が上がったので、その場でためしてみました。 せっかくなのでUP。 UIView* viewA = [[UIView alloc] initWithFrame:self.view.frame]; UIBut…

TTTAttributedLabelをつかってみた!

matttさんが作成されたObjective-Cのライブラリ、TTTAttributedLabelを使ってみました。 どんなもの? NSAttributedStringを使って書式の混在したUILabelを作成できるライブラリです。 太字・斜体だけじゃなく、文中にリンクの設定もできちゃいます。すごい…

Local Notification(通知センター)で自分用ユーティリティアプリ

2012.3.30追記 先日iOS5.1にアップデートしたら、通知センターから各項目へジャンプできなくなってしまいました。 「通知以外の用途に使ってはいけない」という規約ができたり、同等機能のものがリジェクトされたりという話は知っていたのですが、まさかこう…

StoryBoardを使ってNavigationController+TableViewController(XCode4.2/iOS5)

StoryBoardを使って、NavigationController+TableViewControllerでサンプルアプリをつくります。 つくるもの ナビゲーションバーつきのTableViewController セルは動的に生成、クリックするとViewControllerに遷移 手順 プロジェクトの作成 Single View Appl…