Les objets sélectionnables sur UITableViewCell ne répondent pas à l'entrée de l'utilisateur sur iOS14

Aug 18 2020

Tout en compilant quelques projets avec XCode 12 (beta 5 est la dernière version pour le moment) et de les exécuter sur iOS14, je l' ai remarqué que UIButton, UITextFieldet bien d' autres objets sélectionnables ne répondent pas à l' entrée de l' utilisateur lorsque l' intérieur d'un UITableViewCell.

Dans certains cas, il est possible de contourner le problème en amenant l'objet au premier plan (object.bringToFront()), mais cela ne fonctionne pas pour tous les cas auxquels je suis confronté. J'ai également remarqué une vue vide (couche) au-dessus des composants de la cellule lorsque j'utilise l'outil "Debug View Hierarchy". Cette vue n'est pas présente sur les versions XCode 11. Est-ce une nouvelle configuration de cellule qui me manque? Existe-t-il un moyen standard de désactiver ce comportement ou dois-je être piraté pour résoudre ce problème?

PS: Les problèmes n'étaient pas présents sur les mêmes projets lors de la compilation avec XCode 11 (ou version précédente), même sous iOS14.

Réponses

17 RyanYan Aug 19 2020 at 06:25

Tous les problèmes de réponse de sélection peuvent être causés par l'ajout d'une sous-vue sur UITableviewCell. La bonne façon est d'ajouter UITableViewCell.contentView, vérifiez d'abord.