6

今まで私はこのコードを持っていました

if UIScreen.instancesRespondToSelector(Selector("scale")) {
  UIGraphicsBeginImageContextWithOptions(size, false, UIScreen.mainScreen().scale);
}else{...}

このコードは私が書いたものではないので、何のためにあるのかはわかりませんが、実際に変数(?)UIScreen.mainScreen()を持てるかどうかを確認したかったようです。.scale

を見ると、.scaleこれは iOS 4.0 から利用できるように見えます。iOS 7 までサポートしているのですから、これは必要ないはずですよね?

とにかく、これは現在の問題ではありません。これらの新しいセレクターのインスタンス化などを使用して、Swift 3 に向けた Xcode 7.3 が原因で、何百もの警告が表示されています。

Xcodeは私にこれを変更してほしい:

Selector("scale")

の中へ

#selector(NSDecimalNumberBehaviors.scale)

これまで、私が変更した他のすべてのセレクターは、「 に変更Selector("hello")する」などの論理的なもの#selector(MyClass.hello)でしたが、これNSDecimal..は少し極端に聞こえます。Xcode が正しいセレクターを選択することを信頼できますか?NSDecimalNumberBehaviors UIScreen.scale に接続されている場所が見つかりません。入力#selector(UIScreen.scale)するとエラーが発生します..

私が確かに知っている唯一のことは、ここをCMD +クリックscaleするNSDecimalNumberBehaviors.scaleと、こことここUIScreen.mainScreen().scaleが別の場所になるということです..

4

2 に答える 2