2016-04-10 1 views
2

Je suis en train de manipuler avec Google places et autocomplete, à propos de autocomplete de Google endroits j'ai obtenu les résultats, mais je souhaite mettre les résultats dans une barre de recherche avec vue de table devant Google Maps, comme une fenêtre pop-up. Mais je viens de trouver des exemples avec la barre de recherche et la vue de table et rien de plus derrière eux. Je regarde foward faire quelque chose comme l'image ci-dessous.Pop up avec vue de table dans la barre de recherche, swift 2

Example about pop up with table view in front of maps

Toute aide serait appréciée.

+0

Je crois que tableView qui ne fait que remonter une partie de l'écran est présenté comme un popover (c'est un certain type de segue). Vous devez créer un viewController ou un tableViewController et le présenter est comme un survol. Les Popovers ne fonctionnent que sur les iPads, donc si ce n'est pas un iPad, il se présentera de manière modale. Je voudrais vérifier les vidéos sur youtube sur la façon de présenter un popover comme celui-ci: https://www.youtube.com/watch?v=48UA06EwfrM –

+0

Oh, merci. Je vois quelque chose comme ça dans Iphone, la proposition se fait en Iphone bien, je montre juste une photo dans Ipad parce qu'il est plus clair de voir ce que je voudrais faire. Dans Iphone la vue Table appelée par la barre de recherche était en face de la carte de manière peu transparente, mais je ne connaissais pas le nom de l'action comme popover. Je vais chercher à ce sujet. J'apprécie l'attention et si vous avez un autre conseil, j'aimerais le voir. –

+0

Voulez-vous dire que sur un iPhone, lorsque vous appuyez sur la barre de recherche, vous voulez qu'un tableau apparaisse sur le contenu déjà affiché à l'écran? C'est possible sur l'iPhone! Il ne s'affichera pas dans le cadre de l'écran, le tableau apparaîtra sur l'écran entier jusqu'à ce que l'utilisateur clique sur annuler ou sur une cellule tableView. –

Répondre

0

La chose que je cherchais était le popover. Je voudrais utiliser un popover comme je l'ai mentionné précédemment, j'ai trouvé quelques solutions similaires here:

0

REMARQUE: Je ne l'ai jamais fait personnellement, mais voici ma théorie:

Le UISearchBar est un outil astucieux en ce que vous pouvez brancher un délégué à lui de contrôler ses actions. Voici une capture d'écran de la documentation qui peut être trouvée ici: link.

screenshot

Alors, ce que je ferais est de mettre à ce qu'il est classe autour du UISearchBar est. Ensuite, implémentez vos méthodes de délégué de sorte que lorsque l'une des méthodes affichées ci-dessus dans l'image est appelée, la classe environnante se connectera à un UIPopoverPresentationController, qui à son tour aura un UITableView à l'intérieur. (Le popover littéralement "pop over" le reste de l'écran.)

Vous devrez vous assurer que la classe que vous avez défini en tant que délégué implémente le protocole UISearchBarDelegate. Il ressemblera à quelque chose comme ceci:

class Foo: UISearchBarDelegate { 
    /* stuff */ 
} 

Après cela, toute la configuration de données est à vous. Encore une fois, tout cela est en théorie car je ne l'ai pas implémenté moi-même. Si j'ai quelque chose de mal, dites-moi s'il vous plaît.

Bonne chance. EDIT: Pour répondre au commentaire de Dan L sur la question initiale, il est en fait possible d'avoir un popover présent sans modalité sur un iPhone (ou un écran compact). Vous devez définir la classe en tant que délégué présentation du UIPopoverPresentationController un puis mettre en œuvre une méthode déléguée comme ceci:

func adaptivePresentationStyleForPresentationController(controller: UIPresentationController) -> UIModalPresentationStyle { 
    return UIModalPresentationStyle.None 
} 

Tout le code est en train de faire est la prévention de la popover d'aller toujours modal.