UIActionView exibir erroneamente
-
10-07-2019 - |
Pergunta
Eu tenho um UIActionSheet que aparece assim que a visualização inicial em minhas cargas de aplicativos para iPhone se houver dados que pode ser sincronizado de volta para um serviço web. O problema é que o UIActionSheet está aparecendo muito alto - exatamente a metade da barra de abas é exposta sob o lençol ação. Eu não estou ciente de que isso é causado por denominar? Alguém pode oferecer uma explicação / solução para evitar que isso aconteça?!
Agradecemos antecipadamente para quaisquer sugestões, o meu código aparece abaixo ...
- (void)viewDidLoad {
//...preset a few values here, unrelated to the view...
//...
// Add an actionsheet to prompt for a DB sync
if ([myDatabase isSyncPossible] == true) {
UIActionSheet *actionsheet = [[UIActionSheet alloc]
initWithTitle: @"You have information that hasn't been uploaded, would you like to sync now?"
delegate: self
cancelButtonTitle: @"No thanks, maybe later"
destructiveButtonTitle: @"Yes, upload now"
otherButtonTitles: nil];
actionsheet.tag = 2;
[actionsheet showInView:self.view];
[actionsheet release];
}
}
Solução
Assumindo que eu entendo sua descrição corretamente, parece que o quadro de 'self.view' não executar todo o caminho sob a barra de abas, mas em vez disso só vai a meio. Desde a folha de acção baseia-se em parte inferior da vista ele vai começar de onde quer que vista faz. Para corrigir tornar o 'self.view.frame' ir para a parte inferior da tela.
A captura de tela ajudaria.
Outras dicas
Para a chamada showInView:
, tente usar a vista de navegação ou guia vista bar em vez de vista de seu controlador.