Swift 3: ¿Expresión implícitamente forzada desde 'UIView?' a cualquier

Alguien más debe haber recibido este post mientras (o después) convertir un proyecto iOS en Swift 3, pero cuando hago una búsqueda en Google, no obtengo resultados relevantes.

De todos modos, después de convertir a Swift 3, tengo unas 30 advertencias que dicen:

¿Expresión implícitamente forzada desde 'UIView?' a cualquier

Pero las advertencias no apuntan a ninguna línea específica de código. Solo hacen reference a la class donde existe la advertencia.
¿Alguien tiene una idea de esta advertencia o cómo podría silenciarlos?

En mi caso fue un problema relacionado con un dictionary sin tipo explícito:

 let dict = ["key": value] 

Que resolví especificando el tipo:

 let dict: [String: Any] = ["key": value] 

En su caso, puede especificar su tipo de valor:

 let dict: [String: UIView] = ["key": value] 

Esto sucederá cuando la function a la que está llamando tenga un parámetro del tipo Any y pase una opción .

Por ejemplo:

 let color: UIColor? = UIColor.networking UIBarButtonItem.appearance().setTitleTextAttributes([NSFontAttributeName: color], for: .normal) 

¿Observa que el color es del tipo UIColor? y que setTitleTextAttributes espera un dictionary de tipo [String: Any]? .

Para evitar la advertencia, debe forzar la opción de desenvolver su opción o enviarla a Cualquiera.

 UIBarButtonItem.appearance().setTitleTextAttributes([NSFontAttributeName: color!], for: .normal) 

o

 UIBarButtonItem.appearance().setTitleTextAttributes([NSFontAttributeName: color as Any], for: .normal) 

Parece un error en el comstackdor Swift:

https://bugs.swift.org/browse/SR-2921

Actualmente, estoy viendo esto con Xcode 8.1 y 8.2 beta 1.

En su caso, la advertencia debe identificar el file fuente, pero no la línea, como usted indicó. Tendrá que search llamadas para las funciones con Any parámetro.

Bueno, nuevo es que parece fijo en una cadena de herramientas Swift próxima.

Creo que esto se solucionó en Xcode 8.3 beta 1 (pero no lo confirmé)