*

UIActionSheetの文字がブレて多重表示される

公開日: : 最終更新日:2014/02/24 Tips , , ,

UIActionsheetを使っていて、iOS7/iPadの組み合わせで起こる不具合らしき挙動が起こった。
これがとてつもなく見栄えが悪い、というかどう考えても実用に難がありそうな表示になったのでどうにかしないといけない。
具体的にはUIactionSheetのViewがiOS7の基本である半透明の白のままだと、項目数が多すぎるときに表示がおかしくなり、shadowと思われる部分がメインと同じ色で出て、2重にブレて表示されるのである。
しかたがないのでUIActionSheetの子コンポーネントを直接弄って不透明にする必要がある。

これはUIActionSheetDelegateの実装でできるのだが、果たしてRejectせずに通るのだろうか(このコードを入れたアプリは作成中で、Appleの審査に回していない)。

- (void)willPresentActionSheet:(UIActionSheet *)actionSheet {
  actionSheet.backgroundColor = [UIColor whiteColor];
  for (UIView *subview in actionSheet.subviews) {
    subview.backgroundColor = [UIColor whiteColor];
  }
}

バグだという話はstackoverflowdではささやかれているので、直って欲しいものだ。

参照サイト:stackoverflow
http://stackoverflow.com/questions/19025852/xcode-ipad-uiactionsheet-with-many-buttons-do-not-correctly-displayed-ios7

関連記事

UITableViewのヘッダに小文字を入れる

UITableViewのセクションヘッダをStoryboardでカスタマイズするという話題を以前掲載

記事を読む

Xcode8で余計なログを抑制する

Xcode8に更新してから、妙にログが増えたので、NSLogで明示したのと実行時エラー以外のログを吐

記事を読む

FormSheetでModalに表示させたビューの高さを変更する

iPadにおいて、FormSheetでModal表示させたビューの高さを変えたい場合の記事。 この

記事を読む

plistファイルに色を入れる

plistファイル中にUIColorを入れたい!という場合。普通RGBAの値を数値で入れるとかするけ

記事を読む

UISegmentedControlに見栄え良く背景色を設定する

UISegmentedControlをiOS7で使おうとすると、基本の背景色が「透明」になりますが、

記事を読む

実機テストしたときのデータを取り出す

Xcodeでコンパイルして実機テストしている場合に、テストデータを実機から取り出す方法です。 以下

記事を読む

NSAttributedStringをローカライズする方法

NSAttributedStringをLocalizeするうまい方法はないものかと探したら、これが手

記事を読む

UIButtonのappearanceで派生する色設定

以下のコードでUIButtonのappearanceでBackgroundColorの設定をすると、

記事を読む

Bitbucketの画面の日本語化/コミット時に同時プッシュを行う

前回の記事の続きで、Bitbucketの画面の日本語化と、Xcodeでコミットするときに同時にpus

記事を読む

メソッドの呼び出し元を調べる

特定のメソッドに関して、そのメソッドをコールしているメソッド群を調べるための手順。 (1)調べたい

記事を読む

Xcode10からのimage literal / color literalの指定方法

アセットにあるUIImageの直接指定が可能なImage litera

Xcode11でのバージョン番号の取得方法

Xcode11になってバージョン番号をスクリプトから得て自動で更新する

GoogleスプレッドシートからCSVにエクスポートしたデータを得る方法

情報がない中さんざ苦労しましたが、Googleスプレッドシート(の最初

画面回転をしたあとに、UITextViewの先頭を表示する

回転によりサイズが可変するUITextViewで、縦向き(ポートレイト

NXDrawKitを導入してみる

ACEDrawingViewがObj-Cで書かれていて、いまいちメンテ

→もっと見る

    PAGE TOP ↑