我一直在研究raywenderlich.com上的一个名为Objectively Speaking的教程:A Crash Course in Objective-C。在教程中,他们使用分段控件,根据我的理解,我已经在IB中正确连接。我试过发布我的问题但是5天后我仍然没有任何帮助。
我怀疑问题就像连接问题。有人可以看看我的项目,让我知道我哪里出错了。可以在此处找到zip文件:Options, Options, Options。
答案 0 :(得分:1)
您的XIB中有两个分段控件,一个在另一个上面。
问题在于底部分段控件是通过IBOutlet连接的,但实际上你正在选择最顶层的分段索引。
要解决此问题,请删除底部分段控件(没有约束的控件)并将IBOutlet连接到单个剩余的分段控件。
答案 1 :(得分:0)
在appDelegate.m
课程中执行此操作即可。它的发生是因为你不低于iOS 5.
@synthesize window;
@synthesize viewController;
答案 2 :(得分:0)
你需要亲自写下你的听众。
[urSegmentControl addTarget:self action:@selector(segmentControlValueChangedListener:) forControlEvents:UIControlEventValueChanged];
答案 3 :(得分:0)
如果您想在界面构建器中执行此操作:
首先 - 打开ViewController.m类文件并创建这样的函数 - 当你更改段时它将被调用:
然后打开ViewController.xib并使用第二个鼠标按钮在分段控制实例上点击并按住 - 并拉到文件响应器。发布。它将显示如下视图:
选择新创建的功能名称。就是这样 - 现在,当值段值改变时,将调用 quote_opt_touch 函数,在调试器中你会看到“abc”。
另外 - 你有两个分段控件。删除其中一个。
答案 4 :(得分:0)
查看你的xib文件。您有两个segmentedcontrol
声明的实例。您需要卸下底部并重新连接顶部的一个。