小编Anh*_*ham的帖子

进程已经返回到表达式求值前的状态。(lldb)

我登录时出错

DispatchQueue.main.async(execute: {
    let message = parseJSON["message"] as! String
    appDelegate.infoView(message: message, color: colorSmoothRed)
})
Run Code Online (Sandbox Code Playgroud)

在线的 let message = parseJson["message"] as! String

错误:致命错误:在展开可选值时意外发现 nil

ios swift

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

快速查看JSONEncode()输出的优美方法

var test = [String : String] ()
test["title"] = "title"
test["description"] = "description"

let encoder = JSONEncoder()
let json = try? encoder.encode(test)
Run Code Online (Sandbox Code Playgroud)

如何查看的输出json

如果我print(json)唯一得到的是Optional(45 bytes)

json swift swift4

5
推荐指数
2
解决办法
2198
查看次数

更改了 rootViewController 但旧的 rootViewController 的视图仍在视图层次结构中

我有一个基本情况,当用户通过身份验证时,我删除当前屏幕(登录屏幕)并将其更改为应用程序内的另一个屏幕。

为此,我使用以下代码:

if let appDelegate = UIApplication.shared.delegate as? AppDelegate {
    print("Window's subviews before removed = \(appDelegate.window?.subviews)")

    appDelegate.window?.subviews.forEach { $0.removeFromSuperview() }

    print("Window's subviews after removed = \(appDelegate.window?.subviews)")

    appDelegate.window?.rootViewController?.view?.removeFromSuperview()
    appDelegate.window?.rootViewController?.removeFromParentViewController()

    appDelegate.window?.rootViewController = newRootViewController

    print("Window's subviews after changed = \(appDelegate.window?.subviews)")
}
Run Code Online (Sandbox Code Playgroud)

这是输出:

在此处输入图片说明

这是用户可以在设备屏幕上看到的内容 - 看起来非常好: 在此处输入图片说明

但是,在 Debug View Hierarchy 工具中不行:

在此处输入图片说明

如您所见,旧的 rootViewController 的视图仍然存在,UIWindow但不是它的子视图 - 正如输出所示。

这种行为看起来很奇怪,有人遇到过这个问题吗?

uiwindow ios swift

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

didSet 与 willSet?

我在编程方面非常陌生,并且很难理解这两个属性观察者。

我目前正在构建一个带有表格视图的应用程序,其中日期选择器包含在它的行中。在本例中,我有两个日期选择器。众所周知,日期选择器在单元格中占据很大的高度,因此您需要隐藏它们。下面的代码可以处理它:

var isCheckInDatePickerShown: Bool = false {
    didSet{
        checkInDatePicker.isHidden = !isCheckInDatePickerShown
    }
}

var isCheckOutDatePickerShown: Bool = false {
    didSet{
        checkOutDatePicker.isHidden = !isCheckOutDatePickerShown
    }
}
Run Code Online (Sandbox Code Playgroud)

我有非常基本的编程知识,所以我对didSet. a 会发生什么willSet

ios swift

4
推荐指数
1
解决办法
3792
查看次数

作为一个单元旋转时重叠的SpriteNodes

我在使用Swift 3和Spritekit开发应用程序时遇到了一个问题.为了检测碰撞,我制作了四个独立的三角形组成一个正方形.当我将这些三角形旋转为一个单元时,它们重叠并且在旋转期间不保持正方形的形状(它们彼此重叠),但是一旦旋转完成就会恢复正常.

这是我用于轮换的代码:

override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) {
    for touch in touches{
        let location = touch.location(in: self)

        if location.x < 0 {
            blueTriLeft.run(SKAction.rotate(byAngle: CGFloat(M_PI_2), duration: 0.2))
            redTriLeft.run(SKAction.rotate(byAngle: CGFloat(M_PI_2), duration: 0.2))
            yellowTriLeft.run(SKAction.rotate(byAngle: CGFloat(M_PI_2), duration: 0.2))
            greenTriLeft.run(SKAction.rotate(byAngle: CGFloat(M_PI_2), duration: 0.2))

        } else if location.x > 0 {
            blueTriRight.run(SKAction.rotate(byAngle: CGFloat(-M_PI_2), duration: 0.2))
            redTriRight.run(SKAction.rotate(byAngle: CGFloat(-M_PI_2), duration: 0.2))
            yellowTriRight.run(SKAction.rotate(byAngle: CGFloat(-M_PI_2), duration: 0.2))
            greenTriRight.run(SKAction.rotate(byAngle: CGFloat(-M_PI_2), duration: 0.2))
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

下面是我的广场的图片,由四个独立的三角形组成

广场

请随时向我询问您需要查看的任何其他代码,任何输入都有帮助.此外,我无法在行动中得到重叠的问题,所以提前抱歉,但我会尽力去做.

ios sprite-kit skspritenode swift swift3

4
推荐指数
1
解决办法
50
查看次数

"AVCapturePhotoSettings"类型的值没有成员'availablePreviewPhotoPixelFormatTypes

@objc func launchCoreML() {
    let settings = AVCapturePhotoSettings()
    let previewPixelType = settings.availablePreviewPhotoPixelFormatTypes.first
    let previewFormat = [
        kCVPixelBufferPixelFormatTypeKey as String: previewPixelType, 
        kCVPixelBufferWidthKey as String: 160, 
        kCVPixelBufferHeightKey as String: 160
    ] as [String : Any]

    settings.previewPhotoFormat = previewFormat
    cameraOutput.capturePhoto(with: settings, delegate: self)
}
Run Code Online (Sandbox Code Playgroud)

我有一个错误说:

"AVCapturePhotoSettings"类型的值没有成员'availablePreviewPhotoPixelFormat'.

我正在使用Xcode 9的测试版.

swift4 coreml xcode9

4
推荐指数
2
解决办法
1109
查看次数

OSError: [Errno 20] 不是目录,.DS_Store

BASE_FOLDER = "/Users/User/Desktop/DATA"
BOOK_GROUP_FOLDER = os.path.join(BASE_FOLDER, "book_group")
SCREEN_GROUP_FOLDER = os.path.join(BASE_FOLDER, "screen_group")
hidden_file = ("/Users/User/Desktop/DATA/book_group/.DS_Store")

def listdir_ignorehidden(path): #Ignore HiddenFiles
    for f in os.listdir(hidden_file):
        if not f.startswith ('.') and os.path.isfile(os.path.join(hidden_file , f)):
            yield f

def get_person_folder_reading(persons_folder, screen_type):
    base_folder = os.path.join(persons_folder, screen_type)
    return [os.path.join(base_folder, fn) for fn in os.listdir(base_folder) if fn not in ["test", ".Data", "._.Data"]][0]
Run Code Online (Sandbox Code Playgroud)

OSError: [Errno 20] 不是目录:'/Users/User/Desktop/DATA/book_group/.DS_Store/eye_tracker/paper'

我正在尝试从不同目录读取多个文件。但是我收到一个错误,似乎是由 mac 的.DS_Store. 我定义了一个应该忽略它的函数,但它没有帮助。

任何想法如何处理它?

python hidden-files

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

我想在UILabel上使用原生iOS复制和粘贴UI

我想创建iOS时提供的本机复制和粘贴体验,当您点击并按住UITextField- 但我希望它可以在一个UILabel而不是一个UITextField.

这是可能的,还是只适用于它的东西UITextField?我是否需要创建自己的自定义用户界面并乱七八糟UIPasteboard或是否有更有说服力的解决方案?

这是一个典型的例子,虽然它通常也显示放大的圆圈:

它在文本字段中的外观的典型示例:

uilabel uipasteboard ios swift

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

Swift 3中的URL总是为零

我有一个结构,我用来调用iTunes API.但是,当我运行它时,myURL变量永远不会被设置,它始终是nil.不确定我做错了什么:

let myDefaultSession = URLSession(configuration: .default)
var myURL: URL?
var myDataTask: URLSessionTask?

struct APIManager {

    func getJSON(strURL: String)  {
        myURL = URL(string: strURL)
        var dictReturn: Dictionary<String, Any> = [:]

        //cancel data task if it is running
        myDataTask?.cancel()
        print(myURL!) //<----Always nil
    }
}
Run Code Online (Sandbox Code Playgroud)

这是字符串:

"https://itunes.apple.com/search?media=music&entity=song&term=The Chain"
Run Code Online (Sandbox Code Playgroud)

url swift swift3

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

Pod Repo删除Master有什么作用?

所以我对CocoaPods很新,我想对命令做一些澄清.

我有一个错误说,Unable to find a specification for 'Firebase/Core'并且在多次尝试不同的命令后,唯一有用的是Pod repo remove master.任何人都可以告诉我为什么有效,它做了什么?

ios cocoapods firebase swift

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