IOS:如果 UISlider 更改其值,则仅显示一次警报

标签 ios objective-c uialertview uislider uicontrolevents

我正在执行 uislider 的应用程序功能,当用户滑动它向前移动的 slider 并改变它在标签中的值时。我已经为此做了这样的操作

- (IBAction)sensivity:(UISlider*)sender
{
    self.senlabel.text =[NSString stringWithFormat:@"%d", (int)sender.value];
} 

到目前为止一切正常,但我需要在用户第一次开始点击 slider 时显示警报 View 。如果用户单击确定,那么它的标签应该更改 slider 值,如果取消它应该显示一些默认值。 需要的关键点:

  1. 仅在用户点击第二次时显示提醒,现在应该显示提醒
  2. 如果在警报 View 上单击“确定”,则只有 slider 会发生变化
  3. 如果在警报 View 上单击取消,则 slider 不应更改其值

最佳答案

1) 查看 dispatch_once API。查看this link .

2) 和 3) 在实例变量中抛出警报之前保存 slider 的值。将您的类设置为 UIAlertView 的委托(delegate)。如果点击取消按钮,将 slider 设置回保存的值。如果点击确定按钮(您必须在创建警报时指定),则不执行任何操作。

有关 UIKit 入门,请参阅 Ray Wenderlich 的 site .

关于IOS:如果 UISlider 更改其值,则仅显示一次警报,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29259793/

相关文章:

ios - Firebase简单登录错误 "__NSPlaceholderDictionary initWithObjects:forKeys:count:"

ios - 对两个不同类型的 promise 使用相同的 then/catch/finally block

ios - 以编程方式将 XIB View 添加到具有边界的 View Controller - 不居中

iphone - NSInvocationOperation 和 NSBlockOperation 有什么区别

iphone - 保存在 NSDocumentDirectory 或 NSCachesDirectory

iphone - UIAlertView 能否通过委托(delegate)传递字符串和 int

ios - 如何在快速按下取消按钮时取消下载请求

ios - 如何使用 Swift 将 NSString 转换为整数?

ios - UIAlertView更新标题

objective-c - 调用 [alert show] 后 UIAlertView 未立即显示