4D ios login form customisation

Bonjour,

J’aimerais pouvoir customiser l’écran de login de mon app ios. Je suis sous 4D 18.1, Mac OS Mojave
(10.14.6)

Pouvez-vous me dire comme faire cela ?
Merci d’avance.

Cordialement,
Philippe Glatt

Bonjour,

Il y deux façon grosses façon de pouvoir le faire, toutes deux passant par une édition dans Xcode du formulaire iOS


La première étant de générer l’application et modifier celle-ci à postériori avec Xcode.

Il y a un tutoriel disponible dans la documentation pour modifier les form, appelé storyboard sous iOS


(je cherche encore la version francaise qui existe mais je crois qu’il y a un soucis sur le site actuellement avec les langues)

Le fichier du form se trouve sous Source/Forms/Login/LoginForm.storyboard
(le code associé swift natif Loginform.swift)


La seconde est de remplacer le template de base donc toutes les app généré avec le 4D utilisera le form de login modifié

dans un 4D.app cela se trouve dans /…/4D.app/Contents/Resources/Internal User Components/4D Mobile App.4dbase/Resources/templates/form/login/login
et une nouvelle fois dans Source/Forms/Login/LoginForm.storyboard

PS: Dans une 18R, peut être la R2 ou R3Beta nous supportons de manière plus correcte le choix de LoginForm personnalisé parmis N choix comme pour les Detail et List Forms
Cela reste de la béta, il n’y a pas encore d’interface graphique je crois

Pour cela il faut placer sa copie de form de login (tout le dossier avec un nom à vous) dans votre composant dans /Resources/mobile/form/login
Soit donc par exemple /Resources/mobile/form/login/MonLogin, ensuite il ya juste à éditer le json du projet pour indiquer qu’on désire utiliser MonLogin

1 Like

Bonjour Monsieur Marchand,

Merci pour votre réponse, elle me permet d’avancer dans le cadre de mon projet.

J’aurais une question supplémentaire concernant la synchronisation des données.

Actuellement, lorsque je réalise une création ou une modification d’enregistrement (sur l’iPhone ou l’iPad), celui-ci est automatiquement envoyé au serveur 4D. Cela implique qu’il faut être online en permanence.

J’aimerais savoir s’il est possible d’enregistrer les créations ou les modifications sur l’appareil, puis effectuer une synchronisation avec le serveur 4D ultérieurement.

Cela me permettrait d’être de pouvoir continuer à travailler sur mon iPad en offline (en cas de perte de connexion avec le serveur).

Cordialement,

Philippe Glatt

Bonjour, il n’est malheureusement pas possible actuellement de faire ceci sans développer en swift(iOS)
Mais c’est une feature qui est vue comme prioritaire donc je dois faire le développement.

Pour compléter la réponse de @Eric_Marchand, je vous conseille d’écrire une demande d’implémentation dans le forum dédié (en français ou en anglais, à votre convenance) afin de faire valoir votre demande et de permettre aux autres développeurs intéressés de voter pour soutenir votre demande.

Bonjour,

Merci pour vos réponses.

Actuellement, le sdk est pour iOS 13.2. Je compile sous Xcode 11.3. La compilation se passe bien malgré des Warnings me signalant des méthodes dépréciées. Sur le simulateur, l’application fonctionne.

Malheureusement, mon iPhone est en iOS 13.4. l’installation de l’application ne se fait pas. J’ai tenté de compiler pour un iPad Prod. Mais j’ai exactement le même problème.

Pouvez-vous me dire comme se déroule du côté de 4D, le suivi de l’évolution des version de sdk ?

Quelles solutions puis je mettre en place pour pouvoir installer mon application sur un iPhone ou un iPad ayant une version de iOs récente ?

Merci d’avance,

Cordialement,
Philippe Glatt

Bonjour,

Vous trouverez un tableau récapitulatif sur la compatibilité entre les versions d’Xcode, iOS et 4D dans la documentation: https://developer.4d.com/4d-for-ios/docs/en/prerequisites.html.

Une petite astuce pour lancer votre application sur un iPhone ou iPad ayant une version d’iOS plus récente consiste à :

  1. Télécharger la dernière version d’Xcode
  2. Copier le dossier: ▸ Xcode⁩ ▸ ⁨Contents⁩ ▸ ⁨Developer⁩ ▸ ⁨Platforms⁩ ▸ ⁨iPhoneOS.platform⁩ ▸ ⁨DeviceSupport⁩ ▸ 13.4 dans l’ancienne version d’Xcode en respectant la hiérarchie.

Cela doit être effectué avec le 4D fermé. Vous pouvez ensuite supprimer la dernière version d’Xcode et relancer 4D pour utiliser l’ancienne version d’Xcode qui intègrera notre ajout.

Bien cordialement,

David

3 Likes

Bonjour Monsieur,

Actuellement 4D iOS affiche une liste, de la liste on arrive sur l’enregistrement sélectionné en visualisation et il faut ensuite passer en édition via un bouton d’action.

J’aimerais savoir s’il est possible d’arriver directement dans l’écran d’édition d’un enregistrement depuis l’écran de Liste.

Merci d’avance

Cordialement,
Philippe Glatt

Bonjour,

Vous avez la possibilité d’accéder aux boutons d’actions et ouvrir directement l’écran d’édition de vos enregistrements depuis l’écran de list : soit en swipant (glissant) de droite à gauche sur une cellule de TableView ou en maintenant le clic sur une cellule de CollectionView en fonction du template que vous avez sélectionné :

https://developer.4d.com/4d-for-ios/docs/en/action-parameters.html

Cordialement,

David

Bonjour,

Merci beaucoup pour vos réponses.

J’aurais besoin de pouvoir customiser les écrans de saisie en plus des écrans de détails. Est-il possible d’ajouter des boutons, icônes, widgets, etc dans un écrans de saisie ?

Cordialement,
Philippe Glatt

Bonjour,

La customization des vues d’édition est actuellement limitée. Il n’est actuellement pas possible d’ajouter des icônes ou des widgets sur ces formulaires. Vous avez néanmoins la possibilité d’ajouter des paramètres à vos actions et définir par exemple des Checkmark ou des Switch pour les booléens : https://developer.4d.com/4d-for-ios/docs/en/actions.html#add-parameters-to-your-action.

Cordialement,

David