setModalTransitionStyle и setModalPresentationStyle, установить размер представления

Я создаю UIViewController (пользовательский календарь с размером 550x440), и когда я нажимаю кнопку, он должен появиться; проблема в том, что если я использую setModalPresentationStyle и setModalTransitionStyle, они меняют размер моего представления; я могу установить размер для этих презентаций?

2 ответа

Решение

Я нахожу решение:

[self presentModalViewController:calendar animated:YES];

calendar.view.superview.frame = CGRectMake(0, 0, 200, 200);

Может быть, вы хотите изменить свой дизайн, чтобы реализовать календарь как поповер:

// Define the size of the calendar view controller for the popover
UIViewController *viewController = [[UIViewController alloc] init];
viewController.contentSizeForViewInPopover = CGSizeMake(550.0f, 440.0f);
viewController.delegate = self;

UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:viewController];
navigationController.navigationBar.barStyle = UIBarStyleBlackOpaque;

// Create the popover
UIPopoverController *popoverController = [[UIPopoverController alloc] initWithContentViewController:navigationController];

// Present the popover from one button
[popoverController presentPopoverFromBarButtonItem:button permittedArrowDirections:UIPopoverArrowDirectionDown animated:YES];

//release the popover content
[viewController release];
[navigationController release];
Другие вопросы по тегам