我有一个名为 ToolbarView
的类,它是 UIView
的子类,基本上创建了一个 UIView
,它有一个消失/重新出现的 UIToolbar
在上面。我还有一个名为 DraggableToolbarView
的 ToolbarView
子类,它使用户能够在屏幕上拖动 View 。
我需要为 ToolbarView
创建一个委托(delegate),以便它可以通知另一个对象/类工具栏何时重新出现和消失。我还需要为 DraggableToolbarView
创建一个委托(delegate),以便在拖动 View 时通知另一个对象/类。
目前,我已经为每个委托(delegate)创建了一个单独的委托(delegate),但我想知道是否有更好的模式?也许为 ToolbarView
实现一个委托(delegate),并将 DraggableToolbarView
中的委托(delegate)方法列为可选?或者有没有办法子类化委托(delegate)?
完成此任务的最佳/最干净的方法是什么?
最佳答案
如果您为您的委托(delegate)方法创建一个协议(protocol)(无论如何总是一个好主意),您可以让另一个协议(protocol)采用第一个。这建立了类似继承的关系:
@protocol ToolbarViewDelegate
// some methods
@end
@protocol DraggableToolbarViewDelegate <ToolBarViewDelegate>
// additional methods
@end
关于iphone - 子类化委托(delegate)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10766643/