iOS API 2.0, ¡Plagado de nuevas características iOS!

Xojo 2020 Release 2 incluye la API 2.0 para iOS con muchos, muchos cambios y nuevas características.

Para empezar, los proyectos iOS pueden utilizar ahora String y Variant en vez de Text y Auto para una mejor compatibilidad de código con otros proyectos Xojo. Junto a este cambio, también se incluye ahora un nuevo conjunto de componentes de UI en los que se hace uso de String y se siguen las convenciones de nombres definidas por la API 2.0.

Estos componentes UI comienzan todos con el prefijo Mobile. Encontrarás muchos de los mismos componentes que ya venías utilizando anteriormente como MobileButton, MobileTextField, MobileTextArea, etc., pero también encontrarás nuevos componentes como por ejemplo MobileMoviePlayer y MobileMapViewer.

MobileScreen

Un cambio importante es que el equivalente a iOSView es ahora MobileScreen.

Y hablando de MobileScreen, ahora puedes mostrar MobileScreens modales utilizando el método ShowModal:

Var s2 As New Screen2
s2.ShowModal

Puedes utilizar Show en vez de PushTo para una mayor claridad.

Var s2 As New Screen2
s2.Show

Y ahora también puedes controlar si se muestra la barra de navegación cuando se muestra una pantalla utilizando para ello la propiedad TabBarVisible.

MobileApplication

MobileApplication cuenta ahora con algunas novedades, incluyendo la capacidad de ajustar el Número en la Etiqueta de Icono:

App.IconBadgeNumber = 42

Tu app puede utilizar items de atajos (estos son los menús que se muestran cuando haces una pulsación larga sobre el icono de la app), utilizando para ello AddShortcutItem y HandleShortcutItem. También puedes configurar el menú directamente en el Editor de Capacidades (Capabilities Editor en Xojo).

Este código en HandleShortcutItem procesa el atajo seleccionado y muestra la pantalla correspondiente:

Select Case shortcutType
Case "Add"
  Var s1 As New Screen1
  s1.ShortcutLabel.Text = "You selected Add New Item"
  App.CurrentLayout.Content = s1
Case "Favorites"
  Var favorites As New FavoritesScreen
  favorites.Show
End Select

Return True

Ahora puedes procesar esquemas URL en tu app. Define el esquema URL en el Editor de Capacidades (Capabilities Editor en Xojo).

Gestiona el esquema como este en el evento HandleURL:

Var s1 As New Screen1
Var urlText As String = url.Replace("xojotest://", " ")
s1.URLLabel.Text = urlText
App.CurrentLayout.Content = s1

Otros

Puedes usar la clase MobilePopupMessage para mostrar un mensaje que desaparezca tras un breve periodo de tiempo:

Var msg As New MobilePopupMessage
msg.Show("Your message has been sent.")

Notificaciones

Tras una larga espera, ahora se soportan las notificaciones temporizadas, de calendario, ubicación y remotas. Hay mucho por explorar en este sentido, de modo que es recomendable que leas sobre el tema en la Guía de Usuario de Notificaciones para obtener más información.

Consulta también los proyectos de ejemplo sobre Notificaciones en: Examples/iOS/Notifications.

Nuevas Características del Framework

También está disponible en tuas apps iOS gran parte del núcleo del framework Xojo (también denominado a veces el framework Consola). Esto incluye clases como por ejemplo:

  • XMLDocument
  • RegEx
  • SQLiteDatabase, RowSet, DatabaseColumn, DatabaseRow
  • Clipboard
  • URLConnection
  • UDPSocket

Y también están disponibles otras funciones globales, como por ejemplo EncodeBase64/DecodeBase64.

Realmente hay mucho más de lo que se puede cubrir en un artículo del blog, pero he intentado destacar los más reseñable. Asegúrate de leer el artículo sobre Cambios de la API 2.0 en iOS en la Guía del Usuario y de probar los más de 80 ejemplos incluidos (Examples/iOS).

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *