#iphone #uinavigationcontroller #modalviewcontroller
#iPhone #uinavigationcontroller #modalviewcontroller
Вопрос:
пожалуйста, помогите мне с этим, это действительно неустойчиво, я не могу добавить кнопку на панель навигации modalview
UINavigationController *tempModalVC=[[UINavigationController alloc] init];
[tempModalVC.navigationBar setBarStyle:UIBarStyleBlack];
//UIBarButtonItem *tempDoneBTN=[[UIBarButtonItem alloc] initWithTitle:@"Done" style:UIBarButtonItemStylePlain target:self action:@selector(hideModalView:)];
UIBarButtonItem *tempDoneBTN=[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemCancel target:self action:@selector(hideModalView:)];
[tempModalVC.navigationItem setBackBarButtonItem:tempDoneBTN];
[tempModalVC.navigationItem setTitle:@"Title"];
tempModalVC.navigationItem.backBarButtonItem.enabled=YES ;
//[tempModalVC.navigationBar setRightBarButtonItem:[[UIBarButtonItem alloc] initWithTitle:@"" style:UIBarButtonItemStyleBordered target:self action:@selector(hideModalView:)]];
//[tempModalVC.navigationItem setRightBarButtonItem:[[UIBarButtonItem alloc] initWithTitle:@"" style:UIBarButtonItemStyleBordered target:self action:@selector(hideModalView:)]];
[tempDoneBTN release];
[tempModalVC.view addSubview:mapView];
tempModalVC.modalPresentationStyle = UIModalPresentationFormSheet;
Пожалуйста, помогите мне с этим, я перепробовал почти все комбинации перестановок.
Спасибо заранее
Ответ №1:
Похоже, что вы хотите отобразить MapView в модальном представлении.
На iPhone модальные представления занимают весь экран, поэтому для панели навигации нет места. Таким образом, вам не нужен навигационный контроллер.
Я предполагаю, что приведенный выше код находится внутри экземпляра UIViewController. Если это так, просто сделайте это:
[self presentModalViewController:mapView animated:YES/NO];
В этом случае в вашем контроллере MapView вам следует добавить кнопку, которая при нажатии выполняет следующее:
[self dismissModalViewControllerAnimated:YES/NO];