草庐IT

SMB1Protocol

全部标签

objective-c - 类型 'Boolean' 不符合协议(protocol) 'BooleanType'

在尝试根据Apple文档(和tutorial-ized)创建LaunchHelper时,我似乎遇到了由于将Objective-C代码移植到Swift中而引起的问题……谁的编译器不能再这样了在这种情况下是多余的。importServiceManagementletlaunchDaemon:CFStringRef="com.example.ApplicationLauncher"ifSMLoginItemSetEnabled(launchDaemon,true)//Errorappearshere{//...}错误似乎一直是:类型“Boolean”不符合协议(protocol)“Boole

swift - AnyObject 或 Any 上的类型约束(符合协议(protocol)的 AnyObject 或 Any)

我正在尝试将我的Objective-C代码转换为swift。在Objective-C中,我有以下协议(protocol):@protocolRWOverlaySelectionDelegate-(void)areaSelected:(UIView*)viewallPoints:(NSArray*)points;@end下面的类有一个引用协议(protocol)的weak属性(显然它被定义为weak以防止强引用循环)。@interfaceRWMapSelectionLayer:UIView@property(weak,nonatomic)iddelegate;@end现在是Swift的等

ios - 为什么协议(protocol)在 swift 中优于类?

关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭6年前。Improvethisquestion通过观看苹果提供的视频教程,似乎swift是面向协议(protocol)的编程语言,苹果鼓励程序员使用协议(protocol)而不是类。但从我个人的角度来看,我认为协议(protocol)没有明显的优势。类可以符合协议(protocol),但它们也可以继承自父类(superclass)。我们可以为协议(protocol)添加扩展,但我们也可以为类添加扩展。我们可以在符合协议(protoco

ios - 图像选择器 Controller :didFinishPickingMediaWithInfo conflicts with optional requirement method in protocol 'UIImagePickerControllerDelegate'

这是完整的错误:Objective-Cmethod'imagePickerController:didFinishPickingMediaWithInfo:'providedbymethod'imagePickerController(_:didFinishPickingMediaWithInfo:)'conflictswithoptionalrequirementmethod'imagePickerController(_:didFinishPickingMediaWithInfo:)'inprotocol'UIImagePickerControllerDelegate'它出现在我的

generics - 符合两种协议(protocol)的 Swift 泛型类型

我在我的一个类中有一个泛型方法,我想要一个符合UIViewController和UIPickerViewDelegate的泛型类型。我怎样才能做到这一点?我想到了这样做:funcfoo(#viewController:T){}但是这段代码不能“识别”UIPickerViewDelegate。我还考虑过使用管道|而不是逗号,但这更糟糕,编译器不接受。是否可以这样做,或者我必须为类和协议(protocol)做2个参数?或者有更好的解决方法吗?感谢您的帮助,圣诞快乐:] 最佳答案 您的代码:funcfoo(#viewController:

swift - 检查 Swift 类是否符合协议(protocol)并实现可选功能?

我正在用Swift编写一个用于SpriteKit游戏的辅助函数,该函数将检查是否已正确设置碰撞延迟。我想检查我的GameScene是否实现了协议(protocol)SKPhysicsContactDeletegate并且还包含didBeginContact函数。我有以下代码,是在Xcode自动完成的帮助下编写的:ifGameScene(conformsToProtocol(SKPhysicsContactDelegate)){ifGameScene(respondsToSelector(didBeginContact(SKPhysicsContact))){print("Selfimp

ios - 具有内部函数和属性的 Swift 公共(public)协议(protocol)

我想知道在使用协议(protocol)时,当我希望某些函数是公开的,而某些函数对我来说是内部函数时,最佳实践是什么。我正在写一个AudioManager在Swift3中,将AVPlayer包装为一个框架。我希望一些方法是公开的,例如使用AudioManager的ViewController可以访问某些方法,但某些方法不会在框架之外公开->即具有访问修饰符internal而不是public.我正在编写协议(protocol)驱动设计的框架,几乎每个部分都应该有一个协议(protocol)。所以协议(protocol)正在与框架内的协议(protocol)对话。例如主类-AudioMana

Swift:EXC_BAD_ACCESS 从实现协议(protocol)的泛型类型调用方法

我正在使用Swift2和Xcode7.3开发一个项目,遇到了一个错误,我还无法理解原因。我创建了一个名为Resource的协议(protocol),它有一个associatedtype和一个该类型的staticvar。在它的扩展中,我试图创建staticvar的getter的默认实现,其中类型是实现另一个的通用struct>协议(protocol)称为ResourceFinderProtocol。一切都编译良好,但在运行时,当执行下面代码片段的最后一行时,它会产生EXC_BAD_ACCESS崩溃。如果我使structResourceFinder不是通用的,它会顺利运行。protocol

swift - 如何在 Swift 中将关联类型(通用协议(protocol))的协议(protocol)作为参数传递?

我必须将接口(interface)作为参数传递给函数。接口(interface)是通用的,也就是具有关联类型。我找不到一个好的方法来做到这一点。这是我的代码:protocolIObserver:class{typealiasDelegateT...}classObserver:IObserver{typealiasDelegateT=IGeneralEventsDelegate//IGeneralEventsDelegateisaprotocol...}funcnotify(observer:IObserver){...}//hereIneedatypeforobserverparam

Swift - 二元运算符 '===' 不能应用于两个协议(protocol)

这个问题在这里已经有了答案:Canwetestifobjectsconformingtothesameprotocolareidenticalinswiftwithoutcasting?(1个回答)关闭6年前。我正在尝试使用引用比较(===)来比较两种协议(protocol)类型。当我这样做时(Foo是一个协议(protocol)):Binaryoperator'==='cannotbeappliedtotwo'Foo'operands我明白为什么==won'tworkwithoutconformingtoEquatable,但在本例中我使用的是===,这只是一个地址比较。