Tengo un problema con la pantalla de mi popover. Después de initWithContentViewController:
y presentPopoverFromBarButtonItem:permittedArrowDirections:animated:
, corta las esquinas de la barra de navegación. ¿Cómo debería arreglarlo? Gracias.UIPopoverController y UINavigationController corta esquinas
Este es el código que estoy usando
NavContr *nav = [NavContr new];
nav.navigationBar.backgroundColor = [UIColor redColor];
UIPopoverController *tempPop = [[UIPopoverController alloc] initWithContentViewController:nav];
[tempPop presentPopoverFromBarButtonItem:mainButtonItem permittedArrowDirections:UIPopoverArrowDirectionUp animated:NO];
EDIT: He resuelto este problema:
+ (void)configure:(UINavigationController *)navController {
UINavigationBar *navigationBar = navController.navigationBar;
UIView *contentView = nil;
for (UIView *view in navController.view.subviews) {
if ([[NSString stringWithFormat:@"%@", [view class]] isEqualToString:@"UILayoutContainerView"])
contentView = view;
}
// setting frame to navigation bar and content view
[navigationBar setFrame:CGRectMake(navigationBar.frame.origin.x, 0, navigationBar.frame.size.width, navigationBar.frame.size.height)];
[contentView setFrame:CGRectMake(contentView.frame.origin.x, 0, contentView.frame.size.width, contentView.frame.size.height + navigationBar.frame.size.height)];
[navController.view bringSubviewToFront:contentView];
for (UIView *customView in contentView.subviews)
customView.frame = CGRectMake(customView.frame.origin.x, customView.frame.origin.y + navigationBar.frame.size.height, customView.frame.size.width, customView.frame.size.height);
[contentView addSubview:navigationBar];
[contentView bringSubviewToFront:navigationBar];
}
Dale favor código completo generar UIPopoverController – Injectios
Trate de añadir un poco de viewController a su controlador de navegación – Injectios
No se puede cambiar esta funcionalidad. Puede haber algunos medios no documentados para hacerlo, pero existe la posibilidad de que Apple lo rechace. – RLH