0

让我先解释一下这里的上下文。我正在使用 Xcode 4.6 开发一个 iOS 6.1 应用程序。我创建了一个表视图控制器,其中连接了 4 个视图。第一个视图是main视图,我正在处理的视图。

现在我在main视图上有两个按钮。一个yes和一个no按钮。我创建了一个viewcontroller_main子类,并通过在身份检查器中更改其类将其连接到我的main视图。

我创建了自己的类myclass,它有一个名为go. 在我的“是”中,viewcontroller_main.h我添加了一个-(IBAction)button_no和另一个。然后我通过单击main视图并通过连接检查器将功能连接到按钮来链接它们。

现在这是我的问题所在。我的yes按钮目前只是通过 NSLog 将“是”记录到控制台,即

//viewcontroller_main.m

- (IBAction)button_yes {
    NSLog(@"Yes was pressed");
}

但是,我的no按钮会创建一个对象myclass* myname,然后它会创建一个对象myname.go。我有另一个函数可以在文件的方法实现中NSLog显示“否” 。gomyclass.m

//viewcontroller_main.m

- (IBAction)button_no {
    myclass* myname;
    myname.go;
}

//myclass.m

- (void)go {
    NSLog(@"no was pressed")
}

你如何解释这种行为?为什么我在调用时看不到控制台日志myname.go

4

1 回答 1

1

首先,类应始终大写。所以你应该使用ViewController_mainand Myclass

其次,当你这样做时,myclass* myname;你并没有创建一个对象。如果您要打印出myname( NSLog(@"%@", myname)),您会发现它是 nil。话虽如此,请尝试以下操作:

myclass* myname = [[myclass alloc] init];
于 2013-10-26T00:59:17.390 回答