Como se señaló, soy un estudiante y necesito que las cosas se definan un poco más claramente para seguirlas. Después de mucha investigación, la secuencia que tenía que seguir es:
Haga clic en el nombre del proyecto en la parte superior del Navegador de archivos a la izquierda de la ventana del proyecto Xcode. Esta es la línea que tiene el nombre del proyecto, cuántos destinos de compilación hay y la versión del SDK de iOS.
Elija la pestaña Build Settings y desplácese hacia abajo hasta la sección " Swift Compiler - Custom Flags " cerca de la parte inferior. Haga clic en la flecha hacia abajo junto a Otras banderas para expandir la sección.
Haga clic en la línea Debug para seleccionarla. Coloque el cursor del mouse sobre el lado derecho de la línea y haga doble clic. Aparecerá una vista de lista. Haga clic en el botón + en la parte inferior izquierda de la vista de lista para agregar un valor. Se activará un campo de texto.
En el campo de texto, ingrese el texto -D DEBUG
y presione Retorno para confirmar la línea.
Agregue un nuevo archivo Swift a su proyecto. Querrá crear una clase personalizada para el archivo, así que ingrese el texto siguiendo las líneas de lo siguiente:
class Log {
var intFor : Int
init() {
intFor = 42
}
func DLog(message: String, function: String = __FUNCTION__) {
#if DEBUG
println("\(function): \(message)")
#endif
}
}
Hoy estaba teniendo problemas para que Xcode aceptara la clase, por lo que el init puede ser un poco más pesado de lo necesario.
Ahora deberá hacer referencia a su clase personalizada en cualquier clase en la que desee utilizar la nueva función personalizada en lugar de println()
Agregar esto como una propiedad en cada clase aplicable:
let logFor = Log()
Ahora puede reemplazar cualquier instancia de println()
con logFor.DLog()
. La salida también incluye el nombre de la función en la que se llamó a la línea.
Tenga en cuenta que dentro de las funciones de clase no podría llamar a la función a menos que hiciera una copia de la función como una función de clase en esa clase, y println()
también es un poco más flexible con la entrada, por lo que no podría usar esto en cada instancia en mi código.