Tôi gặp sự cố với hiển thị cửa sổ bật lên của mình. Sau initWithContentViewController:
và presentPopoverFromBarButtonItem:permittedArrowDirections:animated:
, nó sẽ cắt các góc của thanh điều hướng. Làm thế nào tôi nên sửa nó? Cảm ơn.Đường dẫn UIPopoverController và UINavigationController cắt các góc
Đây là mã Tôi đang sử dụng
NavContr *nav = [NavContr new];
nav.navigationBar.backgroundColor = [UIColor redColor];
UIPopoverController *tempPop = [[UIPopoverController alloc] initWithContentViewController:nav];
[tempPop presentPopoverFromBarButtonItem:mainButtonItem permittedArrowDirections:UIPopoverArrowDirectionUp animated:NO];
EDIT: Tôi đã giải quyết vấn đề này:
+ (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];
}
Vui lòng tạo mã đầy đủ tạo UIPopoverController – Injectios
Thử thêm một số chế độ xemBộ điều khiển vào bộ điều hướng nav – Injectios
Bạn không thể thay đổi chức năng này. Có thể có một số phương tiện không có giấy tờ để làm điều đó, nhưng có một cơ hội công bằng mà triển khai nó có thể khiến ứng dụng của bạn từ chối bởi Apple. – RLH