草庐IT

swift - 如何快速自动化工厂设计模式?

我想自动化这段代码:letobjectType=json["object"]["type"].stringValue;switchobjectType{case"Message":activity.item=MessageLib.make(json["object"])as!MessageItem;default:()}我想根据它的类型制作一个对象。但我不想为每个新的ObjectType编写一个新的案例。我只想创建一个新的对象类。OBJECTTYPE项目 最佳答案 如果你的类不是一个纯粹的swift类并且从NSObject的某处继承

ios - swift 中单个对象的 NSNotification

我有两个文本字段,topTextField和bottomTextField,分别位于屏幕的顶部和底部。bottomTextField在出现时隐藏在虚拟键盘后面,以便修复我正在使用NSNotification来监听虚拟键盘并在发生这种情况时向上滑动View。但是,每当键盘出现在屏幕上时,View就会向上滑动,包括当topTextField成为第一响应者时,有效地将其移出屏幕。这是代码:funcsubscribeToKeyboardNotifications(){NSNotificationCenter.defaultCenter().addObserver(self,selector:"

ios - 使用未解析的标识符 : PFTwitterUtils swift

目前,我正在尝试使用解析在Xcode7beta中为我的应用程序实现Twitter用户登录。我在parse.com上关注了Twitter上的文档。实现后,我仍在运行使用未解析的标识符PFTwitterUtils.initializeWithConsumerKey("somekey",consumerSecret:"somekey")和@IBActionfunctwitterButtonTapped(sender:AnyObject){PFTwitterUtils.logInWithBlock{(user:PFUser?,error:NSError?)->Voidinifletuser=u

swift - 如何使用 swift 从 Parse 中检索特定的列?

我的解析类中有一个名为“serviceHistory”的数组列。它采用JSON格式。我在查询此列的所有解析对象(池帐户)时遇到问题。使用此代码我可以打印出每个对象,但我无法仅访问服务历史记录列。varquery=PFQuery(className:"PoolAccount")query.selectKeys(["serviceHistory"])query.findObjectsInBackgroundWithBlock{(objects,error)->Voidinifletobjects=objectsas?[PFObject]{self.serviceHistory=object

swift - 让按钮图像贴在左侧 swift xcode

目前正在尝试使用xcode7beta添加一个带有facebook按钮的登录。但是,我注意到每当我重新调整图像的宽度时,它似乎会离开左侧,这是我希望它保持在左边距的位置。当我使用按钮时,我通过图像选项获取此图像。 最佳答案 我以前遇到过同样的情况。那时,我调整了Storyboard选项中的图像插入。在Edge中更改图像,然后根据需要调整插图。但有时它在我的情况下不起作用(例如图像尺寸太大)。如果是这样,您调整原始图像大小。 关于swift-让按钮图像贴在左侧swiftxcode,我们在St

swift - 可以在带有泛型的类内部使用快速泛型吗

我有一个协议(protocol)调用Decodable:publicprotocolDecodable{typealiasDecodedType=Selfstaticfuncdecode(e:Extractor)->DecodedType?}我有一个函数解码:publicfuncdecode(object:AnyObject)->T?{另外,我有一个类RestApiResponseParserclassRestApiResponseParser{privatefunccreateServerModels(response:ServerResponse)->Result{varparsi

xcode - 在 Swift Cocoa 中,如何请求一次提升的权限而不需要再次请求?

我正在尝试编写一个应用程序来编辑存储在中的文件/private/etc/hosts通常,我必须从终端使用sudo写入此文件,所以我认为我的cocoa应用程序需要提升权限。我希望请求一次,然后以某种方式存储许可,这样我就不需要再次请求了。我不知道从哪里开始。 最佳答案 执行此操作的正常方法是使用帮助程序进行所需的更改,然后在运行帮助程序时请求管理员权限。参见thisquestion有关请求管理员权限的更多信息。 关于xcode-在SwiftCocoa中,如何请求一次提升的权限而不需要再次请

Swift UI 测试静态文本值

我有一个标签,它会在特定操作发生后分配其文本,我想通过UI测试来测试分配给它的文本是否正确。我正在获取XCUIElement.descendantsMatchingType(.StaticText).elementBoundByIndex(UInt(3))该元素是一个staticText,element.value没有返回任何有用的东西,除了debugDescription之外,我无法找到另一种从staticText获取任何有用值的方法。但是,它在文档中说debugDescription不可靠,不应该用于实际测试。我如何验证此标签的文本是否正确? 最佳答案

swift - 在swift中调用泛型函数时如何指定类型?

我定义了一个具有以下签名的函数:publicfuncloginUser(username:String)->ReactiveCocoa.Signal我正在尝试调用方法toRACSignal并将loginUser的结果传递给它。toRACSignal的签名是:functoRACSignal(signal:ReactiveCocoa.Signal)->RACSignalfunctoRACSignal(signal:ReactiveCocoa.Signal)->RACSignal我的尝试是这样的:publicfuncRACLoginUser(username:String)->RACSign

swift - 如何使物理脉冲在所有设备上移动相同百分比的屏幕

所以我想做的是让物理脉冲似乎对所有设备都有相同的效果。所以基本上,如果我能想出一种方法来执行以下操作,我就能够实现我的目标。首先让我们通过消除所有引力来简化事情。基本上,无论屏幕尺寸有多大,我都需要计算让屏幕最左侧的物理对象在相同的时间内到达屏幕最右侧所需的冲量。我问的原因是我正在制作一个基于滑动幅度和角度的运动系统。但是我希望它在每台设备上都以相同的方式播放。我正在计算幅度(距离(以虚拟点为单位))/(做手势所花费的时间)然后我将其用裁剪理脉冲。这是我正在使用的代码:funcJump(angle:CGFloat,strength:CGFloat){if(Ready==true){va