小编Flu*_*ity的帖子

用于安全地将可选项分配给var的函数,或者如果为nil则赋值default:无法将"Swift.Int"类型的值转换为"Swift.String"

嘿!


..我再一次寻求帮助就是坏了 - 希望这段代码+任何可能的答案都会对社区有所帮助.

..所以我试图制作一个允许我安全地为lhs分配选项的方法,例如:

var cool_variable = risky_optional!,

没有必要打断它所处的任何范围的流程.这一点是减少控制语句,并且不会在强制解包时立即使程序崩溃(我花了很多时间试图设计不合适的代码)自然地这样做).

..起初,我以为我已经成功了,因为一切都很完美......然后在我的第四轮测试中,我得到了一个

无法将'Swift.Int'(0x105c52190)类型的值转换为'Swift.String'(0x105c584d8).

..我花了很多时间来尝试重构和返工,但我意识到我对泛型,任何和可选项的理解并不具体 - 尽管我做的是学习和实践,但我时不时地尝试做一些不起作用的事情.

这是代码:


>>这是func的截图,如果那是你的东西,那么在XCODE中一切都很漂亮

>>这里是XCODE中的实现<<

/** 
    Safely assign the lhs to this call--the value of $0?, or a default.
    - Don't include ? or ! in the parameter
*/
func safeAssign <ReturnType> (value_to_return: ReturnType?)
 -> ReturnType  {

    // Ensure safety
    guard value_to_return != nil 
    else {

        // Entry: found nil
        print ("SA() -> 1  : SR: $0 was nil! Can't assign to lhs")

        // -Value is …
Run Code Online (Sandbox Code Playgroud)

generics function optional swift

5
推荐指数
1
解决办法
201
查看次数

iOS:如何设置SKSpriteNode的程序化alpha掩码

我能够在项目的.sks文件中设置我自己的自定义对象的alpha掩码,但我不知道如何以编程方式进行.

xcode ios sprite-kit skspritenode swift

5
推荐指数
1
解决办法
941
查看次数

懒惰让?结构中不合理的解决方法

我有一个我正在使用的不可变结构,我正在尝试创建一个不是计算值的属性,但是它的赋值需要先前分配的属性的值.

(哇满口).

我正在努力的财产是 perimeter: Int

// Floor made out of square tiles.
struct Floor { 

  let
  size:           (x: Int, y: Int), // How many tiles in the floor
  tilePerimeter:  Int,

  // Calculate entire floor's perimeter based on tile quantity and perimeter:
  lazy let perimeter: Int = {

    let
    t4th  = self.tilePerimeter / 4,  // Tile width / length
    sx    = self.size.x * t4th,      // All X tiles' length
    sy    = self.size.y * t4th       // All Y tiles' width …
Run Code Online (Sandbox Code Playgroud)

struct properties let lazy-initialization swift

3
推荐指数
1
解决办法
587
查看次数

SKAction.fadeOut(withDuration:2.0)是从场景中删除节点还是"隐藏"它?

所以我正在制作一个游戏,我淡出一个节点,但我不知道它是从场景中删除还是只是隐藏了.我想在完全相同的位置添加另一个节点,我不希望彼此有节点.

let fadeOutAction = SKAction.fadeOut(withDuration: 2.0)
nodeToFadeOut.run(fadeOutAction)
Run Code Online (Sandbox Code Playgroud)

这很完美,但我不知道节点是否从场景中删除.

ios sprite-kit swift

2
推荐指数
1
解决办法
271
查看次数