web-dev-qa-db-fra.com

Le bundle de paramètres ios13 avec le volet enfant plante Settings.app sur un appareil réel

En utilisant un iPad mini4 (A1538), en exécutant iOS 13 beta 6, en utilisant XCode 11 beta 5 ... Créez un nouveau projet iOS en utilisant le modèle d'application Single View dans XCode 11. Ajoutez un Settings.bundle avec la racine contenant seulement deux éléments:

  1. Volet enfant
  2. Champ de texte

Créez un fichier plist de volet enfant, ajoutez-le au fichier Settings.bundle et liez-le à l'entrée racine du volet enfant via sa propriété Nom de fichier, conformément aux instructions normales du paquet Apple Bundle de paramètres. Pour le volet enfant, créez deux articles:

  1. Spécificateur de groupe (semble être nécessaire, sinon rien ne s'affiche dans la page du volet enfant)
  2. Champ de texte

Les noms, valeurs par défaut, etc. des entrées de champ de texte eux-mêmes ne sont pas importants, choisissez quoi que ce soit. Créez l'application et exécutez-la. Sur le simulateur, Settings.app fonctionnera comme prévu - vous pouvez naviguer vers le volet enfant et voir et interagir avec le champ de texte qui s'y trouve. L'exécuter sur un appareil réel entraînera le plantage de Settings.app lorsque vous sélectionnez le contrôle du volet enfant pour y accéder. Si vous supprimez tous les contrôles, dans notre cas l'entrée de champ de texte unique, de la liste des volets enfants, il ne se bloquera pas. L'ajout de toute entrée autre que le spécificateur de groupe semble déclencher le crash. Cela fonctionne très bien sur les versions iOS antérieures à 13.

Debug vs build build n'a pas d'importance. Semble être un nouveau bogue iOS 13. Quelqu'un peut-il recréer et confirmer? Les étapes sont répertoriées mais un exemple de projet peut être fourni si nécessaire - j'ai délibérément utilisé le modèle par défaut avec des modifications minimales pour prouver qu'il ne s'agit pas d'un problème de type WOMM

13
stonedauwg

Je résous ce problème de plantage en changeant le style de vue de table en style de groupe sur le volet enfant. Il vous suffit d'ajouter 1 élément avec le type PSGroupSpecifier.

Child Pane Group Table Style

1
Tony Pham

Eu un problème similaire. Selon les crashlogs, l'exception a été causée par SwiftUI.

Cependant, la mise à jour iOS 13.3 l'a corrigé.

0
Tim Velichko