gpt4 book ai didi

ipad - UIModalPresentationFormSheet,缺少暗淡

转载 作者:行者123 更新时间:2023-12-04 06:33:35 26 4
gpt4 key购买 nike

我正在尝试使用 UIModalPresentationFormSheet 在 iPad 应用程序中显示模态视图 Controller 查看样式。我正在寻找类似于邮件应用程序的新消息 UI/动画的东西。

有两件事行为不正确:
呈现的模态视图 Controller 始终动画到 y=0,即到最顶部
查看而不是像在邮件应用程序中那样在状态栏下方的一些像素。

文档说:

UIModalPresentationFormSheet The width and height of the presented view are smaller than those of the screen and the view is centered on the screen. If the device is in a landscape orientation and the keyboard is visible, the position of the view is adjusted upward so that the view remains visible. All uncovered areas are dimmed to prevent the user from interacting with them.



但是,在我的情况下,没有调光,我仍然可以与 modalViewController 下面的 parentView 交互。

呈现 modalView 的 Controller 我这样做:
AddNewItemViewController *newItemViewController = [[AddNewItemViewController alloc] initWithNibName:@"AddNewItemViewController" bundle:nil];
[self presentModalViewController:newItemViewController animated:YES];
[newItemViewController release];

在呈现的 viewController 中,我这样做:
- (void)viewDidLoad {

[nameField becomeFirstResponder];
[self setModalTransitionStyle:UIModalTransitionStyleCoverVertical];
[self setModalPresentationStyle:UIModalPresentationFormSheet];
[super viewDidLoad];
}

我希望有人可以帮助我。

我需要在父级和 modalViewController 上设置一些其他属性吗?

viewDidLoad 不是进行此设置的正确位置吗?

提前致谢:)

最佳答案

在创建模态视图时,在调用 presentModalViewController 之前设置过渡和演示样式。请记住,创建模态视图的 View “拥有”该对象。您希望所有者设置这些属性,因为您可能会在应用程序的其他地方实现此模态视图,并且需要不同的过渡或演示样式。这样,您每次都可以根据需要进行设置。

    AddNewItemViewController *newItemViewController = [[AddNewItemViewController alloc] initWithNibName:@"AddNewItemViewController" bundle:nil];
newItemViewController.modalPresentationStyle = UIModalPresentationFormSheet;
[self presentModalViewController:newItemViewController animated:YES];
[newItemViewController release];

你在 viewDidLoad 中调用 becomeFirstResponder 是对的。

关于ipad - UIModalPresentationFormSheet,缺少暗淡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5111640/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com