Iphone 如何从另一个ViewController关闭PopOverController
我在主菜单中有一个按钮..点击该按钮将显示一个名为bookselectionview的PopoveController,它由tableview组成,当我点击cel时,它将导航到popover中的另一个视图控制器,seondview由按钮组成,,当我点击任何按钮时,它会导航到popover控制器内的第三视图控制器…一切正常…但我的问题是,,,当我点击第三视图中的任何按钮时,我想关闭这个popover控制器…并且必须导航到主视图..现在它显示了popover控制器内的主视图..我尝试了很多方法,,但是没有什么能帮我…我的代码是 在主视图的工具栏按钮中,我输入了以下代码Iphone 如何从另一个ViewController关闭PopOverController,iphone,ios,uinavigationcontroller,uipopovercontroller,Iphone,Ios,Uinavigationcontroller,Uipopovercontroller,我在主菜单中有一个按钮..点击该按钮将显示一个名为bookselectionview的PopoveController,它由tableview组成,当我点击cel时,它将导航到popover中的另一个视图控制器,seondview由按钮组成,,当我点击任何按钮时,它会导航到popover控制器内的第三视图控制器…一切正常…但我的问题是,,,当我点击第三视图中的任何按钮时,我想关闭这个popover控制器…并且必须导航到主视图..现在它显示了popover控制器内的主视图..我尝试了很多方法,,但
BookSelectionview* popoverContent = [[BookSelectionview alloc]
init];
UINavigationController *navigationController = [[[UINavigationController alloc] initWithRootViewController:popoverContent] autorelease];
popoverContent.contentSizeForViewInPopover =
CGSizeMake(500, 800);
self.popup = [[UIPopoverController alloc]
initWithContentViewController:navigationController];
[self.popup presentPopoverFromRect:CGRectMake(348, 0, 0, 0)
inView:self.view
permittedArrowDirections:UIPopoverArrowDirectionAny
animated:YES];
然后在我的bookselectionview控制器中,我将此ode放在我的tableview中,并选择了方法
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
ChapterSelectionView *detailViewController = [[ChapterSelectionView alloc] initWithNibName:@"ChapterSelectionView" bundle:nil];
detailViewController.contentSizeForViewInPopover =
CGSizeMake(500, 600);
//detailViewController.firstString = firstString;
// ...
// Pass the selected object to the new view controller.
detailViewController.selectedIndex=indexPath.row;
appDelegate.selectedBookIndex=indexPath.row;
self.hidesBottomBarWhenPushed=YES;
[self.navigationController pushViewController:detailViewController animated:YES];
[detailViewController release];
}
在我的SeconView章节SelectionView中,我将此代码放在按钮cilk中
-(void)ButtonClicked:(UIButton *)sender{
[NSThread detachNewThreadSelector: @selector(spinBeginchapterselection) toTarget:self withObject:nil];
VersusSelectionView *detailViewController = [[VersusSelectionView alloc] initWithNibName:@"VersusSelectionView" bundle:nil];
detailViewController.contentSizeForViewInPopover =
CGSizeMake(500,600);
detailViewController.selectedChapter=[sender.titleLabel.text intValue];
appDelegate.selectedChapterIndex=[sender.titleLabel.text intValue];
self.hidesBottomBarWhenPushed=YES;
[self.navigationController pushViewController:detailViewController animated:YES];
[detailViweController relese];
然后在我的第三个视图,即verseviewcontroller中,我将此代码导航到主ViewParallelreaViewController,然后我需要关闭弹出窗口
-(void)ButtonClicked:(UIButton *)sender{
[self dismissModalViewControllerAnimated:YES];
[NSThread detachNewThreadSelector: @selector(spinBeginverseselection) toTarget:self withObject:nil];
appDelegate.selectedBook = [appDelegate.books objectAtIndex:appDelegate.selectedBookIndex];
appDelegate.selectedChapter = [NSString stringWithFormat:@"%d",appDelegate.selectedChapterIndex];
appDelegate.selectedVerse = [NSString stringWithFormat:@"%d",[sender.titleLabel.text intValue]];
[appDelegate reloadVerses];
ParallelReadViewController *detailViewController = [[ParallelReadViewController alloc] initWithNibName:@"ParallelReadViewController" bundle:nil];
[self.navigationController pushViewController:detailViewController animated:YES];
[detailViewController release];
please help me to solve this problem,,,thanks in advance.
试试这个答案