草庐IT

swift - CGFloat 不能用 Float 初始化

我有一个使用Swift为SpriteKit应用程序编写的函数。Xcode当前在构建时出错,声称无法初始化CGFloat()。这是我的代码:funcsomeFunction(){varx:Float=5.0returnCGFloat(x)}抛出错误:“找不到接受所提供参数的‘init’的重载”在CGFloat上单击命令后,我可以看到带有Floats、Doubles和Ints的inits以获取可能的参数。下面的代码也会产生同样的错误funcsomeFunction(){returnCGFloat(5.0)}还有funcsomeFunction(){return5;}哪里出错了“类型‘()’

swift - 将字符串转换为 CGFloat

如何将字符串转换为CGFloat?我试过了:varstring="132"varstringChange=CGFloat((stringasNSString).floatValue)但在Xcode7中它不起作用。 最佳答案 像这样:letcgFloat:CGFloat?=Double("1.49").map{CGFloat($0)}cgFloat是nil如果无法解析字符串你也可以使用没有map的版本,它的作用完全相同:letcgFloat:CGFloat?ifletdouble=Double("1.49"){cgFloat=CGFl

swift - 输入 'Range<CGFloat> does not conform to protocol Sequence' (Swift 3)

这个问题在这里已经有了答案:Swift3:replacecstylefor-loopwithfloatincrement(1个回答)关闭5年前。我想在这里使用CGFloat做一个for循环,但我收到一个错误提示Type'RangedoesnotconformtoprotocolSequence'我尝试运行的代码如下。错误发生在代码末尾的“for”循环中。funcsetupBackgroundSea(){//puttingthebackground//lettexture=SKTexture(imageNamed:"background")texture.filteringMode=.n

swift - 如何接受 CGFloat 或 CGFloats 数组作为函数参数?

我有一个自动布局便利功能,可以将View堆叠在彼此之上。对于我的间距参数,我想允许:View之间的间距为零或单个CGFloat(所有View均匀分布)或CGFloat数组(View之间的不同空间)但是,我不确定如何定义这个论点。//Ambiguousfuncmyconstrainer(_views:[UIView],spacing:CGFloat=0){}funcmyconstrainer(_views:[UIView],spacing:[CGFloat]?=nil){}//Messyfuncmyconstrainer(_views:[UIView],spacingA:CGFloat=

Swift 枚举原始值 : not working with CGFloat = -1. 0

这是什么不起作用?enumAspect:CGFloat{caseClockwise=1.0caseAnticlockwise=-1.0}在逆时针方向上,我被告知“枚举大小写的原始值必须是文字” 最佳答案 这听起来像是一个错误。但是,如果您省略小数部分,它似乎可以工作:enumAspect:CGFloat{caseClockwise=1caseAnticlockwise=-1} 关于Swift枚举原始值:notworkingwithCGFloat=-1.0,我们在StackOverflow

ios - Swift 转换,CGFloat 到 Integer

如何将@IValueCGFloat转换为Int?我一直收到cannotconvert@IValueCGFloattoInteger的消息如下:@IBOutletvaruserObject:UIImageViewfuncreturnYPosition(yPosition:Integer)->Integer{returnuserObject.center.y} 最佳答案 你需要来回传递Int类型,然后才转换:funcreturnYPosition(yPosition:Int)->Int{returnInt(userObject.cent

swift - 如何在 Swift 3 中将 Any 转换为 CGFloat

我需要Any到CGFloat。但是,我遇到了一个fatalerror。为什么不能将Any分配给CGFloat?如何转换?letlx=ixas!CGFloat错误信息:Thread1:EXC_BAD_INSTRUCTION(code=EXC_l386_INVOP,subcode=0x0)0x1040dcbf1:movsd-0xc0(%rbp),%xmm0;xmm0=mem[0],zero打印日志:CGFloat:-0.5CGFloat:-0.5代码:importFoundationimportUIKit//creationofblocksclassBlock{varblockRect=[

iphone - Float 不可转换为 CGFloat,CGFloat 不可转换为 Float

我在XCode6beta4上使用swift时遇到问题,这让我发疯我正在IOS8中开发游戏并且我遵循了教程但我得到了这个:FloatisnotconvertibletoCGFloat然后当我重铸时作为CGFloat,我得到另一个。这是代码:overridefuncdidMoveToView(view:SKView){/*Setupyourscenehere*///physicsself.physicsWorld.gravity=CGVectorMake(0.0,-5.0)//BirdvarbirdTexture=SKTexture(imageNamed:"kirby")birdTextu

Swift 相当于 CGFloat 的 ceilf

我正在尝试做这样的事情varmyCGFloat:CGFloat=3.001ceilf(myCGFloat)但是ceilf只接受Float值。在四处搜索时,有很多关于进行这种转换或那种转换的不同答案,具体取决于它是32位还是64位架构。事实证明解决方案相当简单,但我花了很长时间才找到它。所以我写这个问答对作为其他人的捷径。 最佳答案 现在执行此操作的Swift方法是使用rounded(.up)(如果您想就地更改变量,则使用round(.up))。Behindthescenesitisusingceil,它可以将CGFloat作为参数并

math - 在 swift 中使用 CGFloats 进行数学运算的最佳方法是什么?

我尝试在swift中做一些简单的UIView布局数学并尝试了以下代码行...varoffset:CGFloat=(bounds.width/2.0)-((sortedSymptoms.count*bounds.height)/2.0)并从编译器中得到以下错误:cannotinvoke'-'withanargumentlistoftype'(($T6),($T17))'varoffset:CGFloat=(bounds.width/2.0)-((sortedSymptoms.count*bounds.height)/2.0)~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~