나는 UIPopoverController가 있습니다. UITableViewControllers 두 UINavigationController 넣어.크기 조정 UIPopoverController
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
DetailedTableViewController *tableViewController = [[DetailedTableViewController alloc] initWithStyle:UITableViewStyleGrouped];
tableViewController.contentSizeForViewInPopover = CGSizeMake(POPOVER_SIZE.width, [self createContentHeighForTableViewController:tableViewController]);
tableViewController.delegate = self.boundaryDelegate;
[self.navigationController pushViewController:tableViewController animated:TRUE];
}
createContentHeightForTableViewController:
가 표시하는 데 필요한 높이를 계산합니다
if (self.myPopoverController.isPopoverVisible)
{
[self.myPopoverController dismissPopoverAnimated:YES];
}
else
{
MyRootTableView *rootTableView = [[MyRootTableView alloc]initWithStyle:UITableViewStyleGrouped];
MyRootTableView.contentSizeForViewInPopover = CGSizeMake(POPOVER_SIZE.width, [self createContentHeighForTableViewController:tableView]);
MyRootTableView.boundaryDelegate = self;
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:tableViewController];
navController.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
navController.navigationBar.barStyle = UIBarStyleBlack;
self.myPopoverController = [[UIPopoverController alloc] initWithContentViewController:navController];
self.myPopoverController.delegate = self;
[self.myPopoverController presentPopoverFromRect:frame inView:view permittedArrowDirections:arrowDirection animated:YES];
}
을 rootTableViewController의 didSelectRowAtIndexPath에서 :
은 내가tableView.contentSizeForViewInPopover
과 팝 오버의 크기를 설정할 수있어, 서브 클래 싱 된 jQuery과 작성 테이블보기의 모든 셀
그래서 root tableViewController의 경우 conten을 설정합니다. t 크기. 상세보기 컨트롤러를 만들 때 contentSizeForViewInPopover
을 다른 크기로 설정합니다. 이것은 잘 작동합니다. 내가 가지고있는 문제는 루트 테이블 뷰로 다시 돌아갈 때, contentSizeForViewInPopover
이 여전히 세부 테이블 뷰로 설정되어있는 경우입니다.
테이블보기가 표시되거나 나타나면 팝 오버의 크기를 조정할 수 있습니까?
더 많은 코드 .. –
좋아, 게시 된 모든 코드를 붙여주십시오
tableViewController
(contentSizeForViewInPopover
이 iOS7에에 사용되지 않습니다) 당신에preferredContentSize
대신contentSizeForViewInPopover
를 사용해보십시오. – Padin215