Ошибка Swift компилятора: «Double» не конвертируется в CGFloat

Я только начал изучать Свифта. Я создал игровой проект и придумал шаблон. Я ничего не сделал с кодом. Я попытался запустить проект, но возникла ошибка компилятора.

Я ухожу из учебника, так что это может быть что-то не так с моей средой, или книга уже устарела.

Ошибка Swift компилятора: «Double» не конвертируется в CGFloat

import SpriteKit class GameScene: SKScene { override func didMoveToView(view: SKView) { /* Setup your scene here */ let myLabel = SKLabelNode(fontNamed:"Chalkduster") myLabel.text = "Hello, World!"; myLabel.fontSize = 65; myLabel.position = CGPoint(x:CGRectGetMidX(self.frame), y:CGRectGetMidY(self.frame)); self.addChild(myLabel) } override func mouseDown(theEvent: NSEvent) { /* Called when a mouse click occurs */ let location = theEvent.locationInNode(self) let sprite = SKSpriteNode(imageNamed:"Spaceship") sprite.position = location; sprite.setScale(0.5) let action = SKAction.rotateByAngle(M_PI, duration:1) sprite.runAction(SKAction.repeatActionForever(action)) self.addChild(sprite) } override func update(currentTime: CFTimeInterval) { /* Called before each frame is rendered */ } } 

Ошибка возникает в let action = SKAction.rotateByAngle(M_PI, duration:1)

Вот скриншот настроек проекта введите описание изображения здесь

3 Solutions collect form web for “Ошибка Swift компилятора: «Double» не конвертируется в CGFloat”

Вы можете преобразовать его с помощью CGFloat(M_PI) .

Например, следующий код должен работать в вашем случае (обратите внимание на использование CGFloat )

 let action = SKAction.rotateByAngle(CGFloat(M_PI), duration:1) 

Вы можете объявить pi как это в вашем коде: let π = CGFloat(M_PI) а затем использовать let action = SKAction.rotateByAngle(π, duration:1)

Если вы собираетесь использовать π много, это намного проще.

Вы можете ввести π с ярлыком alt + p

Если вы работаете на 32-битной iOS, то Double не конвертируется в CGFloat, вам нужно добавить литье.

  • Как я могу исключить некоторые файлы из индексации Xcode?
  • Могу ли я указать ограничение AutoLayout на iOS для расстояния до ближайшего видимого соседа?
  • Как добавить панель инструментов в BOTTOM UITableView obj-c / ios / xcode
  • Xcode / clang: почему некоторые, не все из моих заголовков дают «предупреждение: нет правила для обработки файла xxx для архитектуры arm7»
  • Как преобразовать CCSpriteFrame в CCTexture2D (Cocos2d)
  • iOS добавить Дневной календарь в приложении
  • AFNetworking + JSONKit не работает вместе
  • Вложенные рамки Cocoa Touch
  • В Xcode 5 возникает ошибка при добавлении сервера под контроль источника
  • Как исправить «Xcode неожиданно завершает работу при использовании подключаемого модуля libclang.dylib.»?
  • Looping Audio в Xcode
  • Interesting Posts

    Как получить несколько данных в одном запросе Firebase

    Синхронизация базы данных (sqlite) из WebService (Json / XML) для iOS

    MKMapVIew – Разъем для подключения к точке подключения

    XCODE 6 (6A313) Ошибка компиляции с помощью Outlets

    Как сделать до iOS5?

    Перезагрузите определенную ячейку UITableView в iOS

    как показать UIAlertController в пользовательском UITableViewCell при нажатии кнопки с помощью быстрого кода?

    UIView> SKView … willMoveFromView: не вызывается, когда ожидается, и спрайты не «обновляются»,

    Как получить данные из характеристики Bluetooth в Swift

    Двусторонняя привязка в RxSwift

    Snapchat как кнопки на разных контроллерах

    Обходной путь для «привязки к фону: фиксированный», который не работает в iOS4

    Locale – определить, будет ли число отформатировано с десятичными знаками или нет

    Как выбрать заглавные буквы из строки Swift?

    Ошибка Apple Mach – O Linker. Нет такого файла или каталога Swifty Json

    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.