草庐IT

delegators

全部标签

swift - 对 swift 中弱委托(delegate)的困惑

假设我们有一个协议(protocol)protocolMyProtocol{funsomeFunc()}classAClass{vardelegate:MyProtocol?}AClass不关心委托(delegate)是类还是结构。我想要的是有时委托(delegate)可以是一个类,有时可以分配给一个结构。我的问题是我是否应该让委托(delegate)变得“弱”。如果是这样,我必须让MyProtocol成为一个“类协议(protocol)”,这样委托(delegate)就只能是一个类。如果不是,当我将委托(delegate)分配给类时,如何避免保留循环?感谢任何提示!

ios - 自定义单元格中的按钮操作不调用委托(delegate)函数

我在我用作TableView中自定义单元格的View的文件所有者中使用此代码:importUIKitprotocolPostCellViewDelegate:class{funcpostSettingsAction()}classPostCellView:UITableViewCell{weakvardelegate:PostCellViewDelegate?@IBActionfuncpostSettingsClicked(_sender:UIButton){delegate?.postSettingsAction()print("here2")}requiredinit?(coder

swift - 让委托(delegate)在主线程以外的地方运行

我通常想知道如何让swift委托(delegate)在主线程以外的专用线程中运行。更具体地说,我目前正在使用HueSDK4EDK建立我的应用程序与Hue网桥的连接。该过程的一部分是定义状态观察者和连接观察者(作为委托(delegate))来处理传入的事件。privatefuncbuildBridge(withBridgebridge:BridgeInfoModel)->PHSBridge{returnPHSBridge.init(block:{(builder)in...builder?.bridgeConnectionObserver=selfbuilder?.add(self)},

swift - 如何在 App Delegate 中使 Controller 独立?

所以在AppDelegate.swift文件中,我有一个UINavigationController作为RootViewController,一个mainController作为navigationController的topViewController。我在这里实例化了所有数据,因此它可以是独立的。现在,我想将MenuController作为我的topViewController,但我不确定如何从这里调用mainController。更具体地说,我正在创建一个填字游戏,并且一直专注于网格等的逻辑和实现。现在我想在显示填字游戏之前制作一个菜单作为我的第一个屏幕。主菜单->菜单Contr

swift - 在 swift 中将泛型类设置为委托(delegate)

我有一个XMLUtil类,它包装了一些xml解析功能。该类有一个通用参数T。该类还充当NSXMLParserDelegate到NSXMLParser委托(delegate)者。classXMLUtil:NSObject,NSXMLParserDelegate{......init(){parser=NSXMLParser(data:NSData)parser.delegate=selfparser.parse()}......//delegatemethodimplementations}问题:当我的XMLUtil类是通用类时,永远不会调用委托(delegate)方法。但是,当我实现不

ios - Swift Delegate 方法永远不会被调用

我已经在模态中声明了我的协议(protocol),如下所示protocolMapViewControllerDelegate:class{//funcmapViewLocationSelected(sender:AnyObject,location:CLLocation,address:String)funcdidSelectMap(sender:AnyObject)}我还如下声明了委托(delegate)weakvardelegate:MapViewControllerDelegate?然后我关闭屏幕并如下调用委托(delegate)方法self.dismissViewControl

xcode - 带有委托(delegate)协议(protocol)的 Headerdoc - Swift 和 xcode 7.2

我已经定义了一个协议(protocol),并为这个协议(protocol)中的方法添加了HeaderDoc文档。当我Option+Click方法时它正确显示:但是,当我在实现此协议(protocol)的Controller中选择并单击实现时,文档没有显示:我的期望是我为协议(protocol)编写的文档会出现在Controller中,类似于Apple的文档:如何让我的协议(protocol)文档在其他地方可见? 最佳答案 如果您在协议(protocol)扩展中记录协议(protocol)的方法实现,则该文档将在符合该协议(proto

objective-c - WatchKit 中 UIApplication.sharedApplication().delegate 的等价物是什么?

在iOS应用程序中,您可以通过以下方式获取对共享应用程序委托(delegate)的引用:swift:letdelegate=UIApplication.sharedApplication().delegateas!AppDelegateObjective-C:AppDelegate*delegate=[[UIApplicationsharedApplication]delegate];在WatchKit2AppExtension中有一个类似的AppDelegate,我想在ViewController中获取对它的引用以访问应用程序中的共享资源,例如核心数据堆栈的ManagedObject

ios - 协议(protocol)委托(delegate)有时不工作

我遇到了一个协议(protocol)委托(delegate)并不总是响应的问题。这是我的实现:protocolCameraViewDelegate:class{funcdidTapCancel(sender:CameraView)funcdidFinishSelectingPhoto(image:UIImage,sender:CameraView)}在CameraView类中我有:weakvardelegate:CameraViewDelegate?和@IBActionfunccancelButtonTapped(){delegate?.didTapCancel(self)}@IBAc

ios - 未触发自定义委托(delegate)方法

我使用以下代码在TabBarController中添加了一个圆形按钮importUIKitprotocolAddButtonProtocol:class{funcaddButtonIsClicked()}classMainTabBar:UITabBar{openvarbuttonDelegate:AddButtonProtocol?privatevarmiddleButton=UIButton()overrideopenfuncawakeFromNib(){super.awakeFromNib()setupMiddleButton()}overrideopenfunchitTest(_