草庐IT

SWIFT_COMPILATION_MODE

全部标签

swift - 仅当触摸位于自定义形状内时,如何使 UIScrollView 可滚动?

我正在开发一个图像拼贴应用程序。我将拥有多个UIScrollView。ScrollView将具有自定义形状的边界,用户将能够动态更改形状相交的角。ScrollView有UIImageView作为subview。ScrollView是其他UIView的subview。我为每个UIView应用了一个CAShapeLayer掩码。这样我就可以毫无问题地屏蔽ScrollView。但问题是,我只能滚动最后添加的ScrollView的内容。此外,我可以平移和缩放到mask边界之外。当我触摸作为mask的多边形边界内部时,我应该只能平移或缩放。我试过了;scrollView.clipsToBound

swift - 生成一个敌人

在我的游戏中,我希望每10秒生成一个敌人。我试图通过在GameViewController中编写varsecondEnemyTimer=NSTimer.scheduledTimerWithTimeInterval(10.0,target:self,selector:"secondEnemyFunction",userInfo:nil,repeats:false)在viewWillLayoutSubviews方法中。然后在secondEnemyFunction中我写:letskView=self.viewas!SKViewletgameScene=GameScene(size:skVie

swift - 无法实例化使用另一个泛型作为参数的泛型类型 - 无法为类型调用初始值设定项

classRequest{}classResponse{letrequest:Trequiredinit(request:T){self.request=request}}classAdapter{staticfuncMakeRequest>(request:T)->N{letresponse=N(request:request)returnresponse}}Error:Cannotinvokeinitializerfortype'N'withanargumentlistoftype'(request:T)'我想创建一个将请求存储为通用类型的响应类。当我尝试实例化传递通用请求的响应时

swift - 如何在Swift中美化缓存 "pattern"?

我的Swift项目中有一个设置服务,它为我的应用程序中可用的所有设置定义了变量。为了仅在绝对必要时访问NSUserDefaults(为了避免不必要的延迟),我对这些设置使用了缓存变量:classSettingsService{structUserDefaults{staticletSetting1="Setting1"}privatevarsetting1Cache:Bool?varsetting1:Bool{get{ifletvalue=setting1Cache{returnvalue}letvalue=NSUserDefaults.standardUserDefaults().b

ios - 使用 swift 删除为 activityIndi​​cator 创建的 subview

我已经创建了一个接受3个输入的事件窗口函数,msg:String-应在事件窗口中显示的消息indicator:Bool-事件窗口是否应该显示view:UIView-应该从调用它的ViewController获取帧大小等的uiview一切正常,除了需要删除subview的部分。如果在主视图Controller上运行相同的功能。它工作正常。就在我将它移动到NSObject时,它没有。请帮忙classUIDesignFunction:NSObject{funcprogressBarDisplayer(msg:String,indicator:Bool,view:UIView){varacti

objective-c - 导致未定义行为的 Swift 结构

我正在编写一个使用Metal的程序。我正在使用结构定义统一缓冲区布局。当我在swift中声明结构时,它无法绘制。但是当我在Objective-C中声明结构并使用桥接header导入它时,它工作正常。实际的计算逻辑完全相同。唯一的变化是声明。以下是声明:Objective-C声明(这个有效):structUniforms{structMatrix4x4modelViewMatrix;structMatrix4x4projectionMatrix;structMatrix3x3normalMatrix;structVector3lightPosition;};以及Swift声明:struc

objective-c - 如何在 Swift2 中使用 ObjC block 类型定义(尤其是当包含 BOOL 参数时)

在转向Xcode7(beta5)和Swift2之后,我在我的Swift代码中收到关于Bool(或BOOL/ObjCBool​​)使用Objective-Ctypedef从闭包传递(或传入)闭包的值。typedefvoid(^completion_success_block_t)(BOOLsuccess);当我在Swift类中使用此类型时,出现编译器错误。funcdoSomething(completionBlock:completion_success_block_t){doSomethingElse{successinifsuccess==true{}//(1)error1letfo

swift - 如何从 swift 调用基于 servicestack 的 web api?

更新,在我像这样将IReturn添加到我的GetMember类之后[Route("/member")][Route("/member/{member_id}")]publicclassGetMember:IReturn{publicintmember_id{get;set;}}我现在可以成功构建我的swift代码了。但是,响应似乎缺少一些关键属性。CommonResponse是这样定义的publicclassCommonResponse{publicintrecordcount{get;set;}publicobjectdata{get;set;}}这是我的代码varclient=Js

Swift - 通过 NSDate 将 NSDictionary 排序为数组

如何对字典类型进行排序vardaysChart:Dictionary?我试过了,但我收到错误“无法找到接受参数类型‘(Dictionary,(_,_)->_)’的排序的重载”vardaysChartArray=sorted(daysChart){$0.0 最佳答案 请注意,排序不会返回新字典,而是(k,v)元组数组。如果这是您想要的,您可以将比较修改为:{$0.0.timeIntervalSinceReferenceDate我周围没有Swift1.2,但在Swift2中,它看起来像这样:leta=daysChart.sort{(lh

ios - 无法识别的选择器发送到实例 - Swift

这个问题已经在SO上被问过几次了,但是解决方案似乎总是在action字符串的末尾添加:,或者添加一个sender参数,例如UIButton或AnyObject,但这不适用于我。这是我的代码:(在cellForRowAtIndexPath函数内)letmapsbut=cell.viewWithTag(912)as!UIButtonmapsbut.addTarget(self,action:"mapsHit:",forControlEvents:UIControlEvents.TouchUpInside)funcmapsHit(sender:UIButton!){passBuild=bui