我目前正在Xcode上为iOs制作我的第一个Swift项目。我当前的问题是,我的代码中的所有print()命令似乎都没有将文本打印到我的控制台窗口中。我已经在各个地方看过这个问题,但似乎找不到其他人有同样的问题,所以我假设我有某种语法错误或者我对swift / xcode的理解是完全错误的。这是我的代码块:
override func viewDidLoad() {
super.viewDidLoad()
// Configure the view.
let skView = view as! SKView
skView.multipleTouchEnabled = false
let defaults = NSUserDefaults.standardUserDefaults()
defaults.setValue("white",forKey: "petColor")
let bugcheck = defaults.stringForKey("petColor")
print(bugcheck)
print("hello yes this works")
// Create and configure the scene.
scene = GameScene(size: skView.bounds.size)
scene.scaleMode = .AspectFill
// Present the scene.
skView.presentScene(scene)
}
这是在创建新项目时默认生成的GameViewController.swift文件中。这些行:
let defaults = NSUserDefaults.standardUserDefaults()
defaults.setValue("white",forKey: "petColor")
let bugcheck = defaults.stringForKey("petColor")
print(bugcheck)
print("hello yes this works")
我试图开始工作的部分。我想知道正确保存/加载默认值。当我在模拟器中运行应用程序时,视图会加载,并且会显示场景(我在屏幕上弹出了一些图像),因此我知道代码至少在运行。但是,控制台上没有任何内容。是什么赋予了?对不起,如果之前已经问过这个问题,但就像我说我找不到资源一样。谢谢你的时间。
答案 0 :(得分:7)
您需要设置/添加断点,因为有时其他文件中的方法(例如递归块或segue)可能会抢占打印行的调用。如果在设置了断点后看到了print语句,那么你就知道被调用的东西正在抢占print语句的调用。
Adding, Disabling, and Deleting Breakpoints
此外,这听起来很明显,所以不要拍我,但很多人错误地禁用了控制台视图。 shift + command + C 显示控制台 图。
此外,您还可以使用Arrays.asList("aa", "ab", "ab", "bb", "cc" , "ca")
.stream()
.collect(groupingBy(s->sortedStr(s), counting()));
打印到设备日志,以查看它是否有所作为。 nslog
添加时间戳等nslog
然后转到Xcode - >窗口 - >设备并检查设备日志。您还可以检查OS X控制台应用程序是否有相同的日志。
答案 1 :(得分:1)
这个问题最近发生在我身上。
问题是我已使用Duet应用程序将iPad连接为扩展显示。目前,此连接是通过Air Play执行的,由于某些奇怪的原因,Xcode中的日志消失了。
希望对其他人有帮助。