[i0S8] presentModalViewController で表示している画面で文字が切れる
iOS8 を甘く見ていたようで、いろいろな問題が発生している。
今回発見したのは おんぷちゃん for iPad で presentModalViewController を使って表示している結果表示画面内の部品がずれて表示されて、ボタンが押せないという問題。
試してみればすぐ発見できる問題だったが、iOS8 上でのチェックが甘かった。
- (void)viewWillAppear:(BOOL)animated { int w = self.view.bounds.size.width; int h = self.view.bounds.size.height; MY_LOG(@"%d %d", w, h);
調査の結果、なぜか viewWillAppear で部品の配置を行っているためだった。
iOS7 まではこれでも正しく動いていたのだが、iOS8 からは、ModalView のサイズ(540, 620)ではなく、画面全体のサイズ (768, 1024)が返ってきていた。
とりあえず viewDidAppear に処理を移動したところ正しく表示されるようになったが、一瞬部品の再配置が見えてしまうので、viewDidLoad で部品を非表示にして、viewDidAppear で表示するようなWorkaroundを入れました。
それと、いまさらながら iOS6からはUITextAlignmentCenter が Depricated となり、NSTextAlignmentCenter を使う必要があることを知った。
Label Alignment in iOS 6 – UITextAlignment deprecated – Stack Overflow
iOS8 はiPhone6 Plus 対応など内部的には大きな変更が入っているようで、これまで起きたことがないような問題がたくさん起きている。
趣味の開発者には厳しい状況。
関連記事
-
[iPhone SDK] sqlite 学習中。FMDB を知る。
SQLite入門 第2版西沢 直木 翔泳社 2009-05-19売り上げランキング : 17582
-
[Xcode] Interface Builder でControl+ドラッグでOutletが作成できない
たまにInterface Builder でUI作っているとはまるのでメモしておく。 Xco
-
iPhoneアプリの無料版と有料版を同じソースから作りたい
こども向けに作った自作アプリおんぷちゃんは、習作でもあったのでiPhone無料版、iPhone有料版
-
[iOS] アプリ名を変更したところなぜかビルドが通らなくなり苦労した話
アプリ名にiPadと入れるとRejectされる に書いたとおり、アプリ名に iPad が入っていた
-
リズムくんHD 1.2.1 で iOS11に対応しました
iPad用のリズムくんHD のiOS11対応が遅れてしまったため、2017年11月あたりからiOS1
-
Apple Event 2016秋 See you on the 7th
2016秋のApple Eventは 2016/09/07(日本時間 9/8 2:00)に行われた。
-
Anker の高耐久ライトニングケーブルを買ってみた
立て続けに2本ライトニングケーブルが壊れたので、ふんぱつして高級ケーブルを買ってみた。 たしかに
-
[iOS SDK] 処理中の表示に便利 SVProgressHUD
以前 MBProgressHUD の記事を書いたが、たまに使うと使い方をすっかり忘れている。 やり
-
Xcode 9.2 Install
久しぶりに週末に休みが取れたので、ブログを書いてみる。iPhone 7 Plus に1分ごとに再起動
-
Pebbleアプリ改造中
PebbleアプリEverLearnを改造中です。1秒1単語で1分間で60単語を表示。左が初代Peb