草庐IT

reactive-cocoa

全部标签

cocoa - Swift 中的 Array 如何知道它是否包含一个元素?

Swift中的数组可以存储任何Swift类型,包括Struct、Enum和Class实例。但是没有函数==能够比较任何类型的Swift对象。而===运算符也只能比较两个引用。所以我想知道,当函数contains()被调用时,Swift中的数组如何知道它包含一个元素。 最佳答案 如果您查看函数签名:funccontains(seq:S,x:S.Generator.Element)->Bool你看到数组中的元素必须是实现Equatable协议(protocol)的类型,它只包含一个方法:func==(lhs:Self,rhs:Self)

ios - 如何使用 Swift Cocoa Touch 创建交互式动画

我正在尝试创建一个动画,您可以在其中触摸并在屏幕上拖动手指,彩色框会根据您的位置改变大小。把它想象成一个颜色选择器。这是这个想法的动图。我在Corona中使用触摸事件和enterFrame完成了此操作。我似乎无法思考如何在CocoaTouch中创建相同的效果。从哪里开始呢?除非我使用SpriteKit,否则我似乎无法在CocoaTouch中找到等效的enterFrame。我不是在制作游戏,所以SpriteKit看起来有点矫枉过正。 最佳答案 我在github上放了一个简单的动画代码:https://github.com/MehdiS

cocoa - 如何使用动画更改 NSButton 的状态

我正在尝试将复选框的状态绑定(bind)到模型中的变量。当我的模型中相应的bool属性发生变化时,我想用标准的Yosemite动画(比如当你点击它时)更新复选框的状态。NSButton中是否有任何方法可以执行此操作?我正在寻找类似button.changeStateWithAnimation(NSOnState)的内容。如果您不明白我所说的“标准Yosemite动画”是什么意思,请务必查看thisvideo.我尝试了什么cocoa绑定(bind)当我尝试将按钮的值绑定(bind)到我的bool属性时,按钮会在模型更改但没有动画时更新。没有Cocoa绑定(bind)所以我尝试以编程方式切

swift - 如何将 SceneKit 节点更新为 'automatically' 以反射(reflect)底层模型?

在更新模型时,定位、更新和/或添加或删除与底层模型对应的SceneKit节点的最明智方法是什么?我不确定如何最好地表达这个问题,所以举一个最小的例子可能更容易:我有一些东西,比方说彩色对象的集合,我可能想使用Quartz将其二维表示为正方形,或者使用SceneKit进行三维表示。由于两种情况下的基础数据相同,因此抽象出模型并定义如下内容似乎更合适:structFoo{varuid:Stringvarcolor:UIColorvarposition:[Float]//arrayof3floatsforx,y,z}然后我有:varcollectionOfFoo:[Foo]然后我可以通过遍历

ios - 如何使用 use_frameworks cocoa pods 和 Google SDK

我正在构建一个简单的iOS(Swift)应用程序-它会呈现map并在其上绘制标记。当我的Podfile运行时它工作正常source'https://github.com/CocoaPods/Specs.git'platform:ios,'8.1'pod'GoogleMaps'但是当我把它改成这个时(注意use_frameworks!)source'https://github.com/CocoaPods/Specs.git'platform:ios,'8.1'use_frameworks!pod'GoogleMaps'pod'Alamofire','~>1.3'我收到以下错误。错误:C

regex - 操作无法完成。 ( cocoa 错误 2048。)

我对使用正则表达式有点陌生。我收到以下错误:Theoperationcouldn’tbecompleted.(Cocoaerror2048.)当尝试在Swift中使用NSRegularExpression构建以下正则表达式时:letregex=tryNSRegularExpression(pattern:"^(?=.*[A-Z])(?=.*[a-z]).{7-15}$",options:.CaseInsensitive)我试图验证用户输入的字符串至少包含一个大写字母和至少一个小写字母,同时将字符串的长度限制在7到15个字符之间。谢谢 最佳答案

ios - RxSwift 中的 RAC tryMap 替代方案

RxSwift中推荐的实现RACtryMap类功能的方法是什么?以下代码是我如何将json对象映射到内部响应包装类。如果响应不符合某些条件,将返回nil,这将变成一个错误事件(tryMap实现)。extensionRACSignal{funcmapToAPIResponse()->RACSignal{returntryMap({(object)->AnyObject!inifletdata=objectas?[String:AnyObject]{//SomeLogicreturndata["key"]}returnnil})}}这应该如何在RxSwift中实现?更新的可能解决方案我为R

swift - 绑定(bind)到 NSToolbarItem 的 Cocoa 连接是否会阻止取消初始化?

尝试通过连接绑定(bind)到属性(optionSegment)来设置NSToolbarItem的选定段,这是一个NSSegmentedControl。子类化窗口ControllerclassMyWindow:NSWindowController{dynamicvaroptionSegment:Int=0overridefuncwindowDidLoad(){super.windowDidLoad()}}或者,将optionSegment属性放在NSDocument子类中并绑定(bind)到它。每项工作。问题是,使用此绑定(bind),或看似与NSToolbarItem的任何绑定(bi

ios - RxSwift 网络状态可观察

我的View模型中有一个方法“getProducts”:structMyViewModel{funcgetProducts(categoryId:Int)->Observable{returnapi.products(categoryId:categoryId)}varisRunning:Observable={...}}api.products是一个私有(private)变量,它在后台使用URLSessionrx扩展名:session.rx.data(...).我想在我的View模型中有一些isRunning观察者,我可以订阅它以了解它是否正在执行网络请求。这是否可以在不对我的api

ios - ReactiveCocoa 5 动画

在我通过ReactiveSwiftSignalProducer向View的alpha属性发送一些值后,我正在尝试为View的设置动画属性。以下是我目前在没有动画的情况下的做法。//SomewhereinViewModel(forallcodebelow)letshouldShowShutter=MutableProperty(false)//InmyViewself.shutterButton.reactive.alphaCGFloatinreturnshow?1:0.0})我可以通过以下方式不优雅地为View设置动画:self.viewModel.shouldShowShutter.