分段控制不起作用

时间:2012-10-17 11:52:11

标签: objective-c ios uisegmentedcontrol

我一直在研究raywenderlich.com上的一个名为Objectively Speaking的教程:A Crash Course in Objective-C。在教程中,他们使用分段控件,根据我的理解,我已经在IB中正确连接。我试过发布我的问题但是5天后我仍然没有任何帮助。

我怀疑问题就像连接问题。有人可以看看我的项目,让我知道我哪里出错了。可以在此处找到zip文件:Options, Options, Options

5 个答案:

答案 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类文件并创建这样的函数 - 当你更改段时它将被调用:

enter image description here

然后打开ViewController.xib并使用第二个鼠标按钮在分段控制实例上点击并按住 - 并拉到文件响应器。发布。它将显示如下视图:

enter image description here

选择新创建的功能名称。就是这样 - 现在,当值段值改变时,将调用 quote_opt_touch 函数,在调试器中你会看到“abc”。

另外 - 你有两个分段控件。删除其中一个。

答案 4 :(得分:0)

查看你的xib文件。您有两个segmentedcontrol声明的实例。您需要卸下底部并重新连接顶部的一个。