PC SOFT

AYUDA EN LÍNEA
DE WINDEV, WEBDEV Y WINDEV MOBILE

Este contenido proviene de una traducción automática.. Haga clic aquí para ver la versión original en inglés.
  • Panorama general
  • ¿Cómo crear un procedimiento en código Objective C?
  • Notas importantes
  • Usando la UIView de una ventana
  • ¿Cómo llamar a las clases del Objetivo C?
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Otros
Procedimientos almacenados
Panorama general
Tiene la capacidad de escribir código Objective C en las aplicaciones iPhone/iPad generadas con WINDEV Mobile..
Esto le permite crear procedimientos globales en código Objective C.
¿Cómo crear un procedimiento en código Objective C?
Para escribir el código de un procedimiento global en el código del Objetivo C:
  1. Crear un nuevo procedimiento global (mediante "Nuevo procedimiento global" en el menú desplegable de conjuntos de procedimientos del panel "Explorador de proyectos").. Especifique el nombre de este procedimiento.
    Atención: el nombre del procedimiento no debe contener caracteres acentuados.
  2. En el editor de código, haga clic en las letras "WL" que aparecen delante de la leyenda del procedimiento global. La barra se vuelve azul claro y los caracteres "ObjC" aparecen delante del nombre del procedimiento.. El código existente se convierte en comentarios.
Por ejemplo::
se convierte:
comentario:
  • Para volver al código de WLanguage, todo lo que tiene que hacer es hacer clic en "ObjC" en la barra de procedimiento.
  • El nombre del procedimiento del objetivo C no debe contener ningún carácter acentuado.. De lo contrario, los caracteres acentuados se eliminarán al cambiar al código Objective C.

Notas importantes

  • La transferencia de parámetros a un procedimiento de Objetivo C se realiza automáticamente por valor.
  • Si el parámetro es un puntero, el paso de parámetros se realiza por valor, pero también tiene la capacidad de actuar sobre el contenido del puntero en el procedimiento..
  • Los parámetros de los procedimientos escritos en el código del Objetivo C deben necesariamente escribirse con un tipo primitivo (entero, real, cadena,...).. Se soportan los siguientes tipos:
    • char
    • wchar_t
    • float
    • duplicar
    • int
    • long
    • cortocircuito
    • vacío
    • booleana
    • PELEA
  • Evite los comentarios como "/*". Los comentarios de WLanguage ("//") están soportados.

Usando la UIView de una ventana

El UIView de una ventana no se puede utilizar directamente. Sin embargo, Handle se utiliza para obtener un puntero en el UIView actual.
Veamos un ejemplo de código Objective C utilizado para leer un vídeo:
#import <MediaPlayer/MediaPlayer.h>

void PlayVideo(void* currentView, NSString* VideoURL)
{
   
MPMoviePlayerController *moviePlayer;
NSURL *movieURL;
UIView *tmpView = (UIView*)currentView;
   
movieURL = [NSURL URLWithString:VideoURL];
moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:movieURL];
[tmpView addSubview:moviePlayer.view];
moviePlayer.fullscreen = YES;
[moviePlayer play];
}
y la llamada correspondiente en WLanguage:
PlayVideo(Handle(MyWindow, HandleUIViewController), "http://myvideo.com/myvideo.mp4")
¿Cómo llamar a las clases del Objetivo C?
Si su procedimiento en el código del Objetivo C es usar clases del Objetivo C:
  1. Añada las importaciones correspondientes a las clases de objetivo C utilizadas en el código nativo de objetivo C introducido (mediante la palabra clave "Importar").. Le aconsejamos que añada estas importaciones antes de declarar el método. Por ejemplo::
  2. Si las clases Objective C se encuentran en bibliotecas específicas, estas bibliotecas deben incluirse en la aplicación al generar la aplicación iPhone/iPad a través de la siguiente pantalla de asistente:
señalar: Estas bibliotecas deben ser accesibles desde el PC utilizado para generar la aplicación iPhone/iPad..
Versión mínima requerida
  • Versión 17
Comentarios
Media Player SDK
Could you please attach the SDK used for this example (MediaPlayer) so i can use this as a sample? Thank you!
Denny
27 11 2017