2010-01-29 88 views
0

好的。在Xcode中,我希望我的应用程序在UISlider达到1.00或滑块末尾时运行一行代码。我将如何做到这一点?UISlider iPhone SDK问题

+0

你是否想要显示进度并在最后触发某些内容? – 2010-01-29 23:06:14

回答

0

编写一个IBAction方法,并将其连接到Interface Builder中的UISlider,在出现的对话框中选择“On Changed Value”。然后,像这样的添加一些代码的方法:

if(mySlider.value == 1.0f){ 
    //Insert your code here 
} 

- 詹姆斯

+0

当我将这段代码作为IBAction的动作时,它说mySlider是未声明的。我该如何解决? (对不起,我是编码新手) – 2010-01-29 23:00:40

+0

您需要在.h文件中创建UISlider实例,将其声明为属性,并将其合成到.m文件中。 mySlider只是我选择的任意名称,可以是任何东西。完成上述操作后,您需要将您在界面构建器中添加的uislider链接到您在.h文件中创建的uislider实例。那么这应该工作。谷歌UISlider教程,并看看你是否可以在那里找到一些好的代码示例。 – James 2010-01-29 23:16:53

+0

你打算接受答案吗? – James 2011-08-27 00:45:13

1

这些添加到您的UIViewController。

在你.H,界面如下:

-(IBAction)sliderChangedValue:(id) sender; 

在您的m:

-(IBAction)sliderChangedValue:(id) sender { 
    if([sender isKindOfClass:[UISlider class]]) { 
     UISlider *slider = (UISlider *)sender; 
     if(slider.value == 0.0 || slider.value == 1.0) { 
      //your line of code 
     } 
    } 
} 

然后在界面生成器连接的价值改变了你的UISlider的这种方法。

+0

你能帮我一个忙吗,上传源代码到megaupload什么的?每当我这样做时,我会得到5-6个错误。 – 2010-01-31 00:49:43

+0

问题是,有些必须在Interface Builder中完成,并且您不会看到它比我在此处所描述的更好。要在IB中建立连接,请打开检查器,选择第三个选项卡,然后从Value Changed圆圈拖到主窗口中的File's Owner项目。放开,弹出窗口会出现。从弹出窗口中选择sliderChangedValue。它只会在将此代码复制到UIViewController并保存.h文件后出现。 – 2010-01-31 01:14:13