草庐IT

obj_gameScene

全部标签

swift - 你如何在自定义类中获取 GameScene 的 frame.width?

我在尝试将GameScene的frame.width放入自定义类时遇到问题,因为我需要场景宽度来在我的自定义类初始化中定位节点。HudController.swift片段importSpriteKitclassHudController:SKNode{varwidth:CGFloatoverrideinit(){width=GameScene().frame.width//Iwashopingtoaddthescenewidthhere}}下面的代码在我身上崩溃了,我已经尝试了很多其他的解决方案,但都没有成功。有人可以帮我解决这个问题吗?谢谢!更新代码===GameScene.swif

ios - 为 Swift/Obj-c 项目运行 XCTest 时出错(错误 83)

尝试为我的Swift/Obj-c应用程序运行测试时出现以下错误:2016-02-0700:02:26.752xctest[3275:115122]Thebundle“MyAppTests”couldn’tbeloaded.Tryreinstallingthebundle.2016-02-0700:02:26.752xctest[3275:115122](dlopen(/Users/raphaelcruzeiro/Library/Developer/Xcode/DerivedData/MyApp-bjdolynlskqvavgryvznzbluqele/Build/Products/De

objective-c - 在 Swift 中使用 Obj-C 完成 block

在Objective-C中,我有一个完成block类定义为:文件.htypedefvoid(^MYCompletionBlock)(BOOLsuccess,NSDictionary*result,NSError*error);然后,在Swift文件中,我尝试按如下方式使用完成block:Swift.swiftclassMyClass:NSObject{...funcMyFunction()->Void{...objcMethod(param1,withCompletion:{(MYCompletionBlock)->Voidinif(success){//Error:"Useofunr

objective-c - Obj-C 非空函数返回给 Swift 的是什么?

我有一个objective-c库,可以使用桥接header在Swift中使用。我的一个公共(public)方法被注释为返回nonnull但实际上它在某些情况下可以返回nil。我原以为调用此方法的Swift代码会崩溃,因为“解包了一个nil可选值”,但实际上并没有。Objective-C:-(nonnullUserService*)users{if(!_users&&[selfcheckStarted]){_users=[[UserServicealloc]init];}return_users;}-(BOOL)checkStarted{returnNO;}快速header:生成的hea

ios - 具有可为空返回值的 Obj-c 方法未正确转换为 swift

我遇到以下OBJ-C方法无法转换为具有可选返回值的Swift的问题:-(nullableid)executeRequest:(ServerRequest*)requestreturningResponse:(__nullableNSURLResponse**__nullable)responseReferrorRef:(NSError**)errorRef当试图在swift类中覆盖该方法时,它会转换为:overridefuncexecuteRequest(request:ServerRequest,returningResponseresponseRef:AutoreleasingUn

objective-c - 在 Swift 中命名 Obj-C 属性 getter 和 setter

我正在寻找访问的通用解决方案:Obj-C来自Swift的命名属性getter和命名属性setter符合具有readonly属性的Objective-C@protocol类似于CreatinganObjective-CequivalentGetterandSetterinSwift,已关闭,但未提供令人满意的答案。Objective-C到Swift属性示例:我有一个Objective-C协议(protocol),它定义了两个有问题的属性,一个带有自定义getterisEnabled,另一个带有私有(private)setterexists。@protocolSomeProtocol@pr

objective-c - 在 Swift 中覆盖 Obj-c 类函数

要么我看到Swift出现了一些奇怪的行为,要么我做错了什么。假设您有一个名为TurtleHelper的obj-c类,如下所示:@interfaceTurtleHelper:NSObject+(NSDictionary*)getTurtles;@end然后我想在Swift中重写这个方法,所以我这样做:classSwiftTurtles:TurtleHelper{overrideclassfuncgetTurtles()->NSDictionary{//...}}编译器向我抛出以下错误:OverridingmethodwithselectorgetTurtleshasincompatibl

ios - 将 GameViewController.swift 链接到 GameScene.swift

我在main.storyboard上创建了一个UI元素,我需要隐藏它直到游戏结束并且一旦玩家点击屏幕即可关闭。Main.storyboard链接到GameViewController因此我所有的IBOutlets和IBActions都在那里,我所有的游戏代码都在GameScene中。我如何将ViewController链接到场景,因为弹出图像和按钮仅在游戏结束时出现。非常感谢一些帮助,我已经坚持了很长一段时间了。 最佳答案 这似乎是人们在使用SpriteKit游戏时遇到的一个相当普遍的问题,所以让我们来看看SpriteKit游戏和U

swift 3 (SpriteKit) : Reseting the GameScene after the game ends

我想“重置”和“重新启动”GameScene,就好像GameScene是第一次被调用一样。我已经研究了执行此操作的不同方法,但每次我收到警告,提示我正在尝试向已有父节点的父节点添加节点。但是,在我的代码中,我删除了所有现有节点,所以我真的很困惑如何重置GameScene。这就是我现在的做法(当我想从头开始重新启动GameScene时调用此代码,它在GameScene类中调用):letscene=GameScene(size:self.size)scene.scaleMode=.aspectFillletanimation=SKTransition.fade(withDuration:1

objective-c - 用户默认值从 Obj C 迁移到 Swift

我正在为我的OSX应用开发一个更新,它最初是用Obj-C编写的。更新已用Swift重新编写我正面临一个奇怪的用户默认处理问题。(因为用户首选项不能在更新中更改)所有native类型(如Bool、String)用户首选项都工作正常,但符合NSCoding的类无法反序列化/取消归档。它给出了一个错误:Error:[NSKeyedUnarchiverdecodeObjectForKey:]:cannotdecodeobjectofclass(KSPerson)forkey(NS.objects);theclassmaybedefinedinsourcecodeoralibrarythatis