在Swift中,我试图得到一个介于0和1之间的随机浮点值,但我似乎无法实现类型转换.

func randomCGFloat() -> CGFloat {
    return CGFloat(arc4random()) / UINT32_MAX
}

我得到了一个"CGFloat"不能转换为"UInt8"的错误

运行Xcode 6.

推荐答案

try 将除数初始化为浮点数,la:

CGFloat(Float(arc4random()) / Float(UINT32_MAX))

Swift相关问答推荐

如何取消正在视图修改器中运行的任务

如何在AudioKit中实现自定义音效 node ?

我可以在预览中通过拖动手势跳转,但在模拟器中失败

声明一个协议时使用和不使用任何单词有什么区别?

文件命名&NumberForMatter+扩展名&:含义?

可选,类似于自定义类型的初始化

如何在macOS中延迟退出应用程序的退出操作?

在 SwiftUI 中将属性显式设置为其默认值

Swift - 给定一个像 30 的 Int 如何将范围数乘以 7?

按钮图像不会立即刷新

如何使用 Swinject 注册符合 ObservableObject 的协议?

Swift Swiftui - 将 colored颜色 保存到 UserDefaults 并从 @AppStorage 使用它

自定义选取器的出现导致其他视图重新排列

我们如何显示关于 UITextField 是 xCode Swift 的建议?

如何删除桥头而不出错?

Swift 动画 WithDuration 语法是什么?

Swift 中 NSFetchRequest 的多个 NSPredicates?

如何在 Swift 中遍历 struct 属性?

Swift:创建 UIImage 数组

Swift中方法的弃用和其他属性,如何?