Creé dos clases Content
y Bucket
. Bucket
contiene una matriz de Content
objetos y la expone a través de una propiedad pública. Sin embargo, cuando lo hago, recibo el error:
La propiedad no se puede declarar pública porque su tipo usa un tipo interno
¿Alguna idea sobre por qué esto está generando un error?
public(Array<NSObject>) let contents: Array<Content>
Respuestas:
También debe declarar público el nivel de acceso de la
Content
clase.Como se indica en la documentación :
Las clases se declaran
internal
de forma predeterminada, por lo que debe agregar lapublic
palabra clave para hacerlas públicas.También existe una regla similar para las funciones.
fuente
Content
debe ser declarado como público también:Dependiendo de su caso de uso, también puede declarar
Bucket
como interno. Simplemente omita lapublic
palabra clave en este caso.fuente
Mi problema fue un problema de espacio de nombres.
Había declarado una enumeración llamada
Data
y eso estaba estropeando con laData
clase Swift , especialmente unaimageData: Data
propiedad dentro de un modelo de datos básicos.fuente