objective-c - 将UISliders值显示为%

标签 objective-c ios xcode cocoa-touch uislider

我有一个UILabel当前正在UISlider上以0和1之间的值(以.1的增量)显示该值(因此它将显示.1或.2或.3等,最高为1)。但是,我想将此值显示为100中的%,但是我对格式化浮点数不太熟悉。这是我现在拥有的代码:

sliderLabel.text = [NSString stringWithFormat:@"%.1f", [[f numberFromString:thresholdFile] floatValue]];  

最佳答案

哈哈,这可能很棘手。
printf 文档:

。数
对于e,E和f指示符:这是小数点后要打印的位数。

因此,您真正想要的是:

[NSString stringWithFormat:@"%f %%", [mySlider value] * 100];

让我们分解一下,好吗?
  • %f:打印参数列表中的第一个浮点数,即:
    [mySlider value] * 100
    

    注意那里的* 100部分,该部分将0 ... 1范围内的数字转换为0 ... 100范围内的数字。如果您不希望使用小数位数,则可能希望为此调用round()
  • %%:打印出实际的%字符。这是因为printf会搜索以%字符开头的开关,因此,如果字符串中有一个逐字记录,则会产生嘶嘶声。因此,我们使用另一个%(就像我们使用反斜杠一样)对其进行了转义,这很好。
  • 关于objective-c - 将UISliders值显示为%,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11567252/

    相关文章:

    ios - 无法将 Ionic ios AutoHideSplashScreen 设置为 false?

    ios - xcode 8 beta 4 中的 GKBehaviour 使 gkagent 位置变得疯狂

    objective-c - 如何获取在 IB 中创建的自定义 UITableViewCell 类以加载到 UITableView 中?

    ios - 如何在运行 React Native 应用程序的 iOS 设备中启用实时重新加载?

    iphone - 如何在 iOS 中将参数传递给 UIPopovercontroller

    ios - 尝试创建电子邮件时iOS应用程序崩溃

    iphone - 应用内购买应用更新

    iphone - 如何更改UIButton点击(触摸)事件的文本标签?

    ios - watchOS 通知可以显示自定义嵌入字体吗

    objective-c - 拉出 UI slider 名称