gpt4 book ai didi

ios - 将数据传递给 ViewController,这是 UIPopoverController 的内容

转载 作者:行者123 更新时间:2023-11-29 04:19:15 25 4
gpt4 key购买 nike

假设该项目正在使用ARC。ContentViewController是UIPopoverController的内容

- (IBAction)showPop:(UIButton *)button 
{
_pressDate = [NSDate date];
ContentViewController *cvc = [[InfoViewController alloc] initWithNibName:@"ContentViewController" bundle:nil];
self.popController = [[UIPopoverController alloc] initWithContentViewController:cvc];
cvc.dateLabel.text = [_pressDate description];
[self.popController presentPopoverFromRect:button.frame inView:self.view permittedArrowDirections:UIPopoverArrowDirectionDown animated:YES];
}

上面的代码可以工作,没有问题。但我注意到如果我打电话

cvc.dateLabel.text = [_pressDate description];

之前

self.popController = [[UIPopoverController alloc] initWithContentViewController:cvc];

标签没有更新。我只是想了解一下到底是怎么回事?

最佳答案

有一条经验法则是,在 viewDidLoad 运行之前,您不应编辑 ViewController 的 UI,因为 @Phillip Morris 描述了这些原因。而不是设置 cvc.dateLabel。直接在 viewDidLoad 触发之前声明一个属性 textForDateLabel,并设置 cvc.textForDateLabel = [_pressDate description];。 然后在 ContentViewController 的 viewDidLoad 中执行 self.dateLabel.text = textForDateLabel;

关于ios - 将数据传递给 ViewController,这是 UIPopoverController 的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13209035/

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