Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

603
Views
Swift, esta clase no es compatible con la codificación de valor clave para el error clave

Recibo un error al finalizar la aplicación debido a una excepción no detectada

 'NSUnknownKeyException', reason: '[<KGM_IOS.NotEkle 0x7fcb5ee0cd40> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key notEkleTextView.'.

Tengo XIB llamado "notEkle" y dentro de "notEkle" tengo UITextView y el proveedor de XIB es ViewController. Cuando conecto este texto con el controlador, aparece este error. Cargo mi XIB en el controlador como

 let notEkleView: UIView = NotEkle().loadNib() as UIView

Conecto mi vista de texto con el controlador como

 @IBOutlet weak var notEkleTextView: UITextView!

No tengo ningún problema antes de conectar UITextview y el controlador.

 let notEkleView: UIView = NotEkle().loadNib() as UIView
 extension UIView { func loadNib() -> UIView { let bundle = Bundle(for: type(of: self)) let nibName = type(of: self).description().components(separatedBy: ".").last! let nib = UINib(nibName: nibName, bundle: bundle) return nib.instantiate(withOwner: self, options: nil).first as! UIView } }
over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

Hay varios pasos para definir un XIB y usarlo mediante programación.

  1. Primero debe crear el archivo XIB y el archivo Swift con el mismo nombre.

  2. Diseñe según lo necesite, luego conecte el propietario del archivo con el nombre de clase que definió en el Paso 1.

  3. Debe definir un método de inicialización común y anular ambos inicializadores (con marco y codificador).

  4. Conecte toda la vista en XIB como IBOutlet en la clase Swift.

  5. Implemente el inicializador común de la siguiente manera:

 private func commonInitializer() { Bundle.main.loadNibNamed("testView", owner:self, options: nil) addSubview(contentView) contentView.frame = self.bounds contentView.autoresizingMask = [.flexibleHeight,.flexibleWidth] }
  1. Finalmente, puede arrastrar una UIView a cualquier lugar y establecer su clase como esta clase personalizada.

Para más detalles, puedes consultar este tutorial aquí .

over 4 years ago · Santiago Trujillo Report

0

Todo estaba bien para mí, pero aún recibía este error, luego lo resolví

  • Habilitación de "Heredar módulo de Target" en el Inspector de identidad. o
  • Proporcionar el módulo (generalmente el nombre de la carpeta/nombre del grupo) en el que está presente desde el Inspector de identidad en Clase personalizada
over 4 years ago · Santiago Trujillo Report

0

Esta clase no es compatible con la codificación de valor clave para la clave

Esto sucede cuando los puntos de venta no están conectados correctamente desde el guión gráfico a un controlador de vista.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!