2017-10-11 4 views
1

私は正常にXcodeの8と9とMacOSの10.12(シエラ)の両方で、私のiOSアプリのためにdidFinishLaunchingWithOptions[[UITableView appearance] setBackgroundColor:[UIColor redColor]];を使用しています。これは、iOS 11を実行するシミュレータと電話機のハードウェアの両方で行われます。MacOSのハイシエラにコンパイルした場合のUITableViewの外観setBackgroundColorは、プレーンテーブルスタイルのために働いていない

10.13に更新したとき、そのコードは「グループ化」スタイルではないテーブルビューで機能しなくなりました。特定のインスタンスに背景色を設定した場合、正常に動作します。

Xcodeを再インストールしてビルドをクリーニングしましたが、ソースからのローカルな変更が他のコンピュータで構築され、動作していることを確認しました。 10.3 SDKと11.0 SDKの間で変更しても違いはありません。

Set UITableView BackgroundColor Universally with UIAppearanceによると、この機能はサポートされていない可能性がありますが、その回答は数年前のことであり、これは私にとってはうまくいきました。

私の環境のどのような違いがこの問題を引き起こしたかについては、良い答えが説明されます。

答えて

1

プレーンテーブルのデフォルトの背景色が明らかに変更されています。だから、これはすべてのテーブルに行くとリセットすることによって「固定」することができ

<color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/> 

:それはに変更Xcodeの9で

<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/> 

:Xcodeで、ストーリーボードファイルを見てみると、それは、これを生成8.3.3背景色を「デフォルト」に設定しますが、プロジェクトは他の環境では正しく機能しません。

+0

これはうまくいった! – TruMan1

関連する問題