No se pudo insertar un nuevo error de conexión de salida
Frecuentes
Visto 31,340 equipos
23
He creado una celda personalizada para cargar en una tabla. La interfaz está completa y ahora estoy tratando de vincular el xib y la clase.
Tengo la vista de pantalla dividida abierta y trato de controlar el arrastre del elemento para que Xcode pueda hacer la conexión por mí. Cuando completo el nombre y hago clic en conectar, aparece un error:
No se pudo insertar una nueva conexión de salida: No se pudo insertar el código fuente en el documento en URL://localhost/Users/Velox/Projects/CompanyName/ProjectName/ProjectName/HistoryCell.m porque no contiene una definición de clase para la clase denominada HistoryCell.
He configurado la clase personalizada de xib en HistoryCell.
¿Que me estoy perdiendo aqui?
Gracias.
21 Respuestas
75
Este problema parece ser un error de Xcode que se repite principalmente cuando reemplaza un archivo con un nuevo archivo del mismo nombre. Xcode parece mantener una referencia al archivo anterior del mismo nombre.
De todos modos, la forma de solucionar esto parece ser:
Clean el proyecto
Hacer clicTu proyecto> en Navegador de proyectos vista. Ir Compilar fuentes bajo Fases de construcción del objetivo para el que está construyendo. Elimine y vuelva a agregar el archivo .m que le está causando problemas.
Alternativamente, en el Inspector de archivos (Servicios públicos view) del archivo NIB, bajo Membresía objetivo, desmarque y vuelva a marcar el nombre de destino.
Reinicie Xcode por si acaso.
Por supuesto, eliminar y volver a agregar el archivo .m solo debería solucionarlo también.
Los pasos 1. y 2. solo lo arreglaron para mí. Siéntase libre de preguntar si algún paso necesita expandirse.
Saludos y feliz codificación :)
Respondido 05 ago 13, 12:08
Los pasos 1 y 2 también lo hicieron por mí. Gracias por tu ayuda ! - phyzalis
Pasos 1 y 2: lo mismo para mí. ¡Gracias! - Rob Winchester
¡Limpié, construí y paso 3! ¡Gracias! - Ryan R.
Los pasos 1 y 2 me lo solucionaron en Xcode 7.3.1. Estaba ocurriendo en un archivo ViewController que había sido renombrado, y la vinculación de salida perdió la pista del nuevo nombre de archivo. ¡Gracias! - Francisco Pierot
20
Solucioné este problema eliminando el archivo .m (solo de referencia) y luego volviéndolo a agregar al proyecto. Creo que XCode se corrompe a veces (y estoy en el último 4.6).
Respondido 04 Feb 13, 23:02
Ah bueno :) Tanta molestia que tuve que pasar para encontrar esta solución simple. - Daniel Ryan
Funcionó para mí por un error ligeramente diferente: no pudo crear puntos de venta porque no se encontró "@implementación" ... - Sébastien
5
https://stackoverflow.com/a/16166878/521946
Intente limpiar su proyecto y reinicie Xcode.
Si todavía no se puede conectar, siga las Utilities
vista de navegación de Xcode, en la Target membership
sección, desmarcar y marcar la casilla de verificación, funcionará. Tal vez debería reconstruir el proyecto después de desmarcar.
contestado el 23 de mayo de 17 a las 13:05
4
Salga de XCode, luego purgue los datos derivados usando:
rm -rf ~/library/Developer/Xcode/DerivedData/*
Reinicie XCode y conéctese.
Si quieres, crea un alias
alias purgeallbuilds='rm -rf ~/library/Developer/Xcode/DerivedData/*'
en su .bash_profile como se sugiere aquí.
contestado el 23 de mayo de 17 a las 13:05
4
Sólo tienes que ir a .m
presentar
remove
#import "calssName.h"
guardar el archivo
añadir texto de nuevo
#import "calssName.h"
guardar el archivo
Respondido 09 Feb 15, 10:02
Impresionante... El mejor. - jeet.chanchawat
3
Entonces, resulta que estaba siendo un tonto. No puedes hacerlo así con Xcode. Si crea las propiedades manualmente en el archivo de encabezado y luego las sintetiza en el archivo de clase, puede vincularlas haciendo lo siguiente:
Abra el archivo xib. Haga clic derecho en la celda en el panel "Objetos". Haga clic y arrastre desde las opciones aquí hasta los objetos en el xib.
Eso es todo.
Respondido el 12 de junio de 12 a las 13:06
Yo también tengo este problema. ¿Cómo sé cuándo puedo presionar Ctrl y arrastrar el objeto para crear conexiones de salida? Recuerdo que a veces puedo hacer eso cuando estaba desarrollando aplicaciones maestras de detalles y para algunas aplicaciones de vista única. - chico nuevo
@newguy Creo que está bien siempre que no esté usando un componente personalizado. - dale myers
Es extraño porque no tengo ningún componente personalizado. Solo puse algunas etiquetas en el controlador de vista y ni siquiera doy un nombre o tengo una subclase de ese controlador de vista, lo que significa que el controlador de vista tiene un nombre de clase predeterminado "ViewController". - chico nuevo
¡Gracias! Acabo de enterarme de ctrl-drag
atajo para referencias de puntos de venta. - Vaughan
3
El problema podría deberse a otros errores. Cree el programa, si hay algún error o advertencia, arréglelo. Luego presione ctrl y arrastre para insertar la salida nuevamente y el problema desaparecerá.
Respondido 29 Jul 12, 15:07
No... No hubo ningún error. ¿Y publiqué la solución hace 6 semanas? - dale myers
Estaba teniendo el mismo problema. Solo necesitaba una compilación simple del programa como sugirió @ Philip007, y salió bien nuevamente. - Así que sobre eso
3
Tuve el mismo problema para un controlador de vista que se eliminó accidentalmente. Leí archivos agregados al proyecto, pero agregar Outlets arrastrando desde el archivo xib me dio el error mencionado. Limpié el proyecto y reinicié XCode y todo funcionó bien nuevamente.
respondido 25 nov., 12:22
2
- Elimine el archivo .m de las fuentes compiladas y agréguelo nuevamente.
- limpia y construye tu proyecto.
- Reinicie xcode.
En mi caso, #1 solucionó el problema
Respondido 17 Jul 14, 09:07
2
Tuve el mismo problema con Xcode 6.2. En este caso, fue suficiente 'tocar' la clase de destino, agregando y eliminando algo sin sentido, para forzar una recompilación. El tema se fue entonces.
respondido 13 mar '15, 08:03
1
mientras que las soluciones de eliminar y agregar de nuevo parecían funcionar un poco. Afortunadamente tuve esta misma situación desde el principio y quería una manera fácil de solucionarlo en caso de que sucediera hasta la rodilla en la programación. Resulta que si solo compila el proyecto "Comando B" o va a Producto y va a compilar. Esto funcionó bien y asoció mi vista con el archivo designado.
respondido 19 nov., 15:14
1
Usé xCode 7 e iOS 9.
en tu .m
borrar #import "VC.h"
guarde .m y vincule su salida nuevamente, funciona bien.
Respondido 11 ago 16, 14:08
0
Tenía otra ventana de Xcode abierta para otro proyecto y el simulador también se estaba ejecutando. Acabo de cerrar ambos y Producto-> Limpiar mi aplicación actual. Funciona.
Respondido el 31 de diciembre de 14 a las 10:12
0
Para mí, reiniciar Xcode no funcionó, simplemente eliminé el objeto y lo agregué nuevamente y luego comencé a trabajar.
contestado el 15 de mayo de 15 a las 10:05
0
Funcionó en mi caso. 1 crear un nuevo proyecto con un nombre diferente 2 copiar y pegar el archivo en él 3 eliminar el archivo del primer proyecto 4 copiar y pegar el archivo del nuevo proyecto en el primer proyecto.
Respondido el 01 de junio de 15 a las 04:06
0
Intenté "Producto> Limpiar" y luego "Producto> Limpiar carpeta de compilación", pero aún tenía problemas. Luego simplemente eliminé los archivos .m y .h ofensivos asociados con el controlador de vista que me estaba dando problemas, creé un nuevo .m y .h para la clase de controlador de vista, reasigné la nueva clase de controlador de vista al objeto del guión gráfico que estaba teniendo problemas con, y todo funcionó.
Respondido el 09 de Septiembre de 15 a las 00:09
0
Tengo el problema informado al tratar de agregar un nuevo objetivo Watch a un proyecto anterior, como lo hice con éxito varias veces en proyectos en blanco siguiendo tutoriales. Intenté insertar el esquema de destino y eliminar los archivos, los objetivos y los esquemas, así como reiniciar Xcode y eliminar los archivos derivados muchas veces. Pero cada vez que vuelvo a crear el objetivo y trato de activar el Asistente de edición, no encuentra ningún archivo correspondiente al guión gráfico principal, y si lo selecciono manualmente y luego trato de arrastrar una nueva salida, aparece el error del póster original. ¿Qué más podría ser? De hecho, mi error es bastante diferente, como puede ver en la captura de pantalla.
Respondido el 22 de Septiembre de 15 a las 17:09
Busque ClassNames o StoryBoardsID duplicados dentro de su .storyBoard
editando como XML, encontré nombres duplicados debido a antiguas referencias falsas @abhi1992. Si otro truco te funcionó, por favor compártelo :) - Jaime Agudo
0
Asegúrese de que la indexación no se haya desactivado (este fue mi problema). Aquí se explica cómo volver a activarlo desde la línea de comandos:
los valores predeterminados escriben com.apple.dt.Xcode IDEIndexDisable 0
respondido 08 mar '16, 16:03
0
elimine su celda personalizada (celda de vista de tabla) y agregue nuevamente con un nombre diferente. Funciona.
Respondido el 07 de junio de 16 a las 08:06
0
- Proyecto 'limpio'
- permite completar la indexación (si no se completó)
- 'construir' una vez
- comprueba que tu problema está solucionado
Respondido 23 Feb 17, 12:02
No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas ios objective-c uitableview cocoa-touch uikit or haz tu propia pregunta.
intente conectarlo programáticamente configurando su iboutet en el archivo .h. - iOS Developer
Sí, eso funciona bien.... - Dale Myers
posible duplicado de Xcode 4: creando un xib de UIView, no se conecta correctamente - Max MacLeod