免责声明:我编写的程序有效。我只需要帮助理解它。
今天我刚开始学习 XCode 和 Objective-C。我有大量的 Java 经验,我必须承认这是非常不同的。我目前正在关注一本让我们处理故事板上的两个场景的书。Main View Controller Scene
和Flipside View Controller Scene
。_
在主要场景中,我有一个label outlet
说 Hello World 的场景。它的名字是标签。在反面场景中,我有一个text outlet
. 当用户从反面场景翻转到主场景时,文本出口中的文本将应用于标签出口。因此,如果我在反面输入 Hello StackOverflow,然后翻转它,我将在主场景中看到 Hello StackOverflow。
我们通过转到控制翻转并位于主场景 .m 类中的方法并添加此代码来做到这一点。
self.label.text = controller.labelText.text;
谁能解释一下这段代码?我知道 label 和 labelText 是我的名字。而文本正在寻找文本。但是我不知道 self 和 controller 是从哪里来的,书中也没有解释。谢谢你。
编辑
这是函数标题中具有控制器的函数的完整代码。我不明白这种方法发生了什么。任何解释都会很棒。
- (void)flipsideViewControllerDidFinish:(HWFlipsideViewController *)controller
{
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone)
{
[self dismissViewControllerAnimated:YES completion:nil];
}
else
{
[self.flipsidePopoverController dismissPopoverAnimated:YES];
self.flipsidePopoverController = nil;
}
self.label.text = controller.labelText.text;
}