‘Uso del identificador no resuelto’ en Swift

Así que he estado haciendo una aplicación, y todo ha funcionado de maravilla. Pero hoy hice una clase nueva como siempre y por alguna razón en esta clase no puedo acceder a la variable pública / global desde otras clases. Todas las demás clases pueden, pero ahora, cuando bash hacer una nueva clase, no puedo. ¿Cómo sería esto solucionado?

Estoy usando Swift y Xcode 6.

Clase obrera:

import UIKit import Foundation import Parse import CoreData var signedIn = true class ViewController: UIViewController { 

Nueva clase:

 import UIKit class NewClass: UIViewController { override func viewDidLoad() { super.viewDidLoad() signedIn = false } 

Pero en signedIn = false

Obtengo el use of unresolved identifier signedIn

Un posible problema es que su nueva clase tiene un objective diferente o diferentes objectives del otro.

Por ejemplo, podría tener un objective de prueba mientras que el otro no. Para este caso específico, debe incluir todas sus clases en el objective de prueba o ninguna de ellas.

Objetivos

Para mí, este error ocurrió porque estaba tratando de llamar a una función anidada . Lo único que tenía que hacer para que se solucionara era llevar la función a un ámbito donde fuera visible.

El ‘Uso del identificador no resuelto’ en Swift my también ocurre cuando olvidó importar una biblioteca. Por ejemplo, tengo el error: enter image description here

En el que olvidé el UIKit

importar UIKit

Porque no lo has declarado. Si quieres usar una variable de otra clase debes usar

 override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) { var DestViewController : ViewController = segue.destinationViewController as ViewController DestViewController.signedIn = false } 

Tienes que poner este código al final del código NewClass

A veces, el comstackdor se confunde con la syntax de su clase. Esto sucede mucho si pegas en la fuente de otro lugar.

Intente reducir el archivo de origen “no resuelto” al mínimo, limpiando y construyendo. Una vez que se construye con éxito, agregue toda la complejidad a su clase.

Esto hizo que desapareciera cuando reinicié Xcode no funcionó.

Su NewClass hereda de UIViewController . Has declarado que has signedIn en ViewController . Si desea que NewClass pueda identificar esa variable, deberá declararse en una clase NewClass .

Otro lugar en el que he visto este error es cuando su proyecto tiene múltiples destinos Y varios encabezados de conexión en puente . Si se trata de una clase compartida, asegúrese de agregar el recurso a todos los encabezados de enlace.

Un buen consejo es mirar en el panel Issue Navigator izquierdo; el objeto raíz mostrará el objective que está emitiendo la queja.

Si se trata de una clase que ha creado, asegúrese de que la clase no esté anidada.

Fe

A.swift

 class A { class ARelated { } } 

llamando var b = ARelated() dará ‘Uso del identificador no resuelto: ARelated’.

Tu también puedes:

1) separe las clases si lo desea en el mismo archivo:

A.swift

 class A { } class ARelated { } 

2) Mantenga su misma estructura y use la clase adjunta para llegar a la subclase:

var b = A.ARelated

Hice un estúpido error. Olvidé mencionar la clase como pública o abierta al actualizar el código en el espacio de trabajo de cocoapod.

Compruebe si el acceso está trabajando en un área de trabajo separada.

Obtuve este error para Mantle Framework en mi proyecto Objective-Swift. Lo que probé es,

  1. Compruebe si la importación está allí en el archivo Bridging-Header.h
  2. Cambie la Membresía de destino para Framework en el archivo Mantle.h como se muestra en la captura de pantalla siguiente.

Alternar entre membresía privada primero comstackr el proyecto, terminar con errores. Luego crea el proyecto con membresía pública para todos los marcos aparecidos para el archivo Mantle.h , debes tener éxito.

Es solo un error de construcción con framework múltiple en el proyecto Objective-C Swift.

enter image description here