我正在使用故事板并将滚动视图窗口拖到视图上。在我的代码中,我以编程方式创建了一个开关对象,该对象以某种方式未被正确初始化。该交换机上的看法似乎正确,但每当我点击开关,抛出一个异常说以编程方式将开关添加到滚动视图抛出异常
“无法识别的选择发送到实例0x6a786f0' ”
我也试图编辑开/关文本是/否,访问交换机也会引发相同的异常。显然,我错过了创建我的开关和设置正确的代表或其他任何东西。
我的代码来创建开关..
UISwitch *switchControl = [[UISwitch alloc] initWithFrame:CGRectMake(x, y, 60, 20)];
[switchControl addTarget:inputsView action:@selector(actionSwitch:) forControlEvents:UIControlEventTouchUpInside];
[switchControl setBackgroundColor:[UIColor clearColor]];
//[(UILabel *)[[[[[[switchControl subviews] lastObject] subviews]
// objectAtIndex:1] subviews] objectAtIndex:0] setText:@"Yes"];
//[(UILabel *)[[[[[[switchControl subviews] lastObject] subviews]
// objectAtIndex:1] subviews] objectAtIndex:1] setText:@"No"];
[inputsView addSubview:switchControl];
inputsView是我的UIScrollView,我在我的.h文件中创建的名称。
我应该注意到,当点击开关调用异常时,在错误中'reason'是原因:' - [UIScrollView actionSwitch:]。当通过尝试调整文本调用错误时,“原因”就是原因:' - [UIImageView setText:]
对我所缺失的任何帮助都会很棒。
感谢
我之所以没有使用'self'是因为我也有编程创建的文本框。 “自我”他们出现在UIScrollView背后的视图中,用户看不到它们。但我只是尝试改变为UISwitch的“自我”,并且错误仍然存在。我还没有创建一个actionSwitch方法。如果我在UIScrollView所在的视图控制器中执行此操作,是否可以解决问题?此外,关于如何创建所述动作切换方法的任何链接或信息也会很好。 – 2012-01-17 19:42:48
好的,我添加了一个 - (IBAction)选择器:(id)actionSwitch {}方法,但错误仍然发生。请记住,我必须动态创建这些内容,并有可能,根据用户,我可能永远不会创建交换机。所以我不能假设他们会一直在那里的一堆变量和方法。 – 2012-01-17 19:52:41
@JesseDurham,在回应评论时附上答案。 – NJones 2012-01-17 20:02:58