2011-12-09 9 views
5

Ho iniziato a utilizzare WEPopoverController per visualizzare alcuni controlli dopo aver fatto clic su un UIBarButtonItem in una barra degli strumenti nella parte inferiore dello schermo. Il popover viene visualizzato correttamente e i controlli all'interno del popover funzionano, tuttavia non appena viene visualizzato il popover, l'UIBarButtonItem a cui era ancorato scompare!WEPopoverController presentPopoverFromBarButtonItem sta causando la scomparsa dell'UIBarButtonItem specificato

Ecco il codice per la visualizzazione, è abbastanza semplice:

WEPopoverController *wePopover = [[WEPopoverController alloc] initWithContentViewController:audioController]; 
[wePopover setPopoverContentSize:CGSizeMake(200, 150)]; 
[wePopover presentPopoverFromBarButtonItem:voiceButton permittedArrowDirections:UIPopoverArrowDirectionDown animated:YES]; 

Funzionerà se uso presentPopoverFromRect, ma non è la soluzione ideale.

Chiunque incontri questo problema prima?

+0

Hai mai risolto questo? Sto ottenendo lo stesso problema qui. Inoltre, la punta della freccia non punta mai correttamente al pulsante. – colincameron

+0

Non credo che l'abbiamo mai fatto. Ho finito usando solo presentPopoverFromRect: ma da allora abbiamo cambiato il layout e non usiamo più il popover. In bocca al lupo. – TylerJames

+0

Ho anche questo errore, ecco questo problema su Github: https://github.com/werner77/WEPopover/issues/26 –

risposta

0

Suppongo che il problema sia con la classe di categoria UIBarButtonItem(WEPopover), che implementa
- (CGRect)frameInView:(UIView *)v. Da qualche parte lungo la strada, la vista personalizzata viene cancellata e non restituita successivamente alla gerarchia della vista.
Se si tenta di utilizzare un oggetto barButtonItem standard (nessuna visualizzazione personalizzata), il popover verrà visualizzato correttamente, senza nascondere l'elemento (ma questa non è una soluzione).
In ogni caso, presentando da rect era la soluzione che ho usato pure.

Problemi correlati