💬

traitCollection に関するログメッセージ

2023/02/18に公開

Xcode 14.2 で手元のアプリをビルドした時に発生した。

[TraitCollection] Class CKBrowserSwitcherViewController overrides the -traitCollection getter, which is not supported. If you're trying to override traits, you must use the appropriate API.

class CKBrowserSwitcherViewControllertraitCollection プロパティをオーバーライドしようとしていることを示している。

結論としては、この CKBrowserSwitcherViewController は自分が作成したクラスではないので、無視しても良いものということらしい。

以下メモ

ここの回答で、Xcode 12 Beta のドキュメントにこれについての記載があるらしいという言及があるが、Beta のリリースノートは最新版しか Apple のサイトに掲載されていないので確認できない。

このサイトには iOS 13 beta2 (Xcode 11) の Xcode リリースノートが転記されている。おそらくフォーラムが指している内容と同等の内容。

When running your app from Xcode, you might see console errors about UIKit classes that override the traitCollection getter. You can safely ignore these messages for system classes. If you see this error message for your own classes, it likely indicates a real issue for you to fix. (51651561)

「このメッセージが対象としているクラスが、俺らが作ったクラス(システムクラス)なら無視でいいけど、あなたが作ったクラスなら直したほうがいいよ」的なことが書いてある。

というわけで無視でよさそうです。

日記

ようやく macOS Ventura にしました。Stage Manager をオンにしてみて、使わないかなーと思いつつ作業をちょっとしてみていたら、アプリ単体に集中できる感があって意外に悪くないかもと思いました。

Discussion