2013年6月25日火曜日

UIImageをタイルで並べたら黒い線が出た

Viewの背景をパターン画像でタイル塗りした時に
一定間隔で黒い線が出ている。。
iOS5.1で現象を確認。

    UIImage* bgImage = [UIImage imageNamed:@"xxx.png"];
    [targetView setBackgroundColor:[UIColor colorWithPatternImage:bgImage]];

こんな感じで書いてるんですが。

原因は、XCodeが行うPNGファイルの圧縮によるもののようです。

・プロジェクトのBuild Settings - Packaging - Compress PNG Files を No にする。
または
・http://d.hatena.ne.jp/wasabi-arts/20090301/1235856525

こちらの方法で解決しました。

2013年6月15日土曜日

ADT22.0にしてみたら

PagerAdapter実装してるところでExceptionが出た。

 java.lang.IllegalStateException: The application's PagerAdapter changed the adapter's contents without calling PagerAdapter#notifyDataSetChanged!
うんぬん。。

解決策はこちらにあって。
http://stackoverflow.com/questions/16756131/fragmentstatepageradapter-stopped-working-after-updating-to-adt-22

コンテンツを追加等した後は、
notifyDataSetChanged()
を呼ばないとダメになったようです。

http://developer.android.com/reference/android/support/v4/view/ViewPager.html
リファレンスにも書いてありました。。
すんませんでした。。

2013年6月5日水曜日

Push NotificationsをEnableにしようとしてハマる

iOS Apps - Identifiers - App IDs - iOS App ID Settings
Push NotificationsをEnableにしようとしてハマった事


■Service - Push NotificationsをEnableにするため、
Enableにチェックを付けてDoneするが、Disableのまま変わらない。

(原因)
既に作成してあるCertificateが古いため(?)Enableに出来ない。(??)
Expiresが期限内であっても、
作成した時点から一定期間過ぎていると、うまくいかないようです。

(対応)
既に存在するCertificateをRevokeして、
新しく「Create Certificate」する。

これでEnableにできるようになりました。


■ アプリにプッシュ通知の確認アラートが出ない

(原因)
Provisioning ProfilesにPush NotificationsのEnable状態が反映されていない。

(対応)
iOS Apps - Provisioning Profiles - iOS Provisioning Profiles
該当のProfileを選択し、Editする。
内容に変更があってもなくても、Generateする。
更新したProfileをダウンロードして、Organizerに反映し、XCodeを再起動。
アプリをビルドし直す。

※Enables Servicesに「Push Notifications」の文字が見えていても、
Enableにした後、Editし直していなければ、
それは見かけ倒し。(←だまされた…)

該当のProvisioning Profileをテキストエディタで開いて、
<key>aps-environment</key>
上記キーが存在していなければ、Editし直す必要があります。


以上です。