iPhone - 将触摸事件链接到不同的类/控制器

问题描述:

我在名为SliderCell的自定义UITableViewCell中有一个UISlider。iPhone - 将触摸事件链接到不同的类/控制器

我在SliderCell中有一个方法,它更新UILabel以匹配滑块的值。

- (IBAction)sliderChanged:(id)sender; 

我在viewController中使用SliderCell的表中有相同的方法。基于滑块的值,我想重新加载一个NSDictionary。

当我将UISlider链接到SliderCell的方法时,它可以工作。 当我将UISlider链接到viewController的方法时,它会在应用程序开始时甚至不显示NSLOG而崩溃应用程序。

我通过简单地将我的viewController类拖到我的SlideCell笔尖,将UISlider链接到viewController。该应用程序是否尝试启动另一个viewController实例?

如何正确链接它?

正确的方法是忘记界面生成器,只是以编程方式做所有事情!

SEL action = @selector(someAction:); 
[myUISlider addTarget:self action:action forControlEvents:UIControlEventValueChanged]; 

您是否将UISlider连接到viewController中的IBAction方法?这就是所有你真的应该需要做

+0

当我说“链接”我的意思是连接。连接到两者后,我用我的鼠标触摸滑块,应用程序崩溃。 – ssj 2010-08-30 02:37:41

+0

从控制台发布输出。如果通过链接意味着连接IBOutlets,则一个未连接的插座不应导致崩溃,所以其他事情正在发生。发布代码和控制台输出。 – Jordan 2010-08-30 02:43:14

+0

我不是在谈论IBOutlets。我将UISlider连接到两个不同类的2个IBActions。它在控制台中没有任何输出时崩溃。 我找到了一种解决方法,将SliderCell放入它自己的笔尖中,然后将其放入ViewController的笔尖并停止崩溃。 – ssj 2010-08-30 06:13:05

我想你需要你的声明更改为:

-(IBAction) yourSliderValueChanged: (UISlider *) sender 

然后挂钩的动作滑块。