因此,在我的通用应用程序中,我有一个部分,人们可以在其中查看我们系统中现有的笔记列表(通过简单的 Web 服务检索),然后如果他们愿意,还可以创建一个新的笔记。因此,对于 iphone,它的布局非常简单,一个 TableViewController 用于在 NavigationBar 上显示带有“添加”按钮的列表,该按钮显示用于添加新项目的模态视图。但是在 iPad 上,相同的布局会浪费很多空间,所以我选择使用 popOver 方法在 popOver 中显示列表,然后让它们从那里添加。我的问题是,当用户单击 PopOver 视图中的 Add 按钮时,模态视图会全屏显示,而不是仅出现在 popover 视图中。这是我到目前为止的代码:
-(void) AddButtonPressed:(id)sender {
NewNoteVC *newNote = [[[NewNoteVC alloc] initWithNibName:@"NewNoteVC" bundle:nil] autorelease];
newNote.defaultClientID = defaultClientID;
UINavigationController *navCon = [[[UINavigationController alloc] initWithRootViewController:newNote] autorelease];
if ([isPopOver isEqualToString:@"YES"]) {
[navCon setModalInPopover:YES];
[self.navigationController setModalInPopover:YES];
[self.navigationController presentModalViewController:navCon animated:YES];
}
else {
[self.navigationController presentModalViewController:navCon animated:YES];
}
}
“isPopOver”字符串只是从调用此 TableView 的前一个屏幕发送的占位符(我知道我可以将其切换为布尔值以获得更好的性能,我只是将它放在一起快速尝试一下)。我知道我在某个地方搞砸了,我只是不知道我需要什么设置才能让它正常工作。