我想創建一個可以從兩個自定義類繼承的類。 你有什麼想法做這個請嗎? 請參閱我下面的例子:IOS的多繼承
一流:
@interface UIZoomableView : UIView
{
UITapGestureRecognizer *_tapGestureRecognizer;
}
和實施:
- (void)onDoubleTap:(UITapGestureRecognizer *)sender
{
CGSize newSize;
CGPoint centerPoint = self.center;
if ([self isSmall])
{
newSize = [self bigSize];
}
else
{
newSize = [self smallSize];
}
[UIView animateWithDuration:0.3 animations:^{
self.size = newSize;
self.center = centerPoint;
}];
}
二等:
@interface UIDraggableView : UIView
UIPanGestureRecognizer *_panGestureRecognizer;
@end
實現:
- (void)handlePan:(UIPanGestureRecognizer*)sender
{
..
}
我想創建一個可以縮放和拖動的自定義視圖。 你有什麼想法做這個請嗎? (沒有複製代碼..)
我覺得類似協議的東西,但我想爲基類默認值? 我該如何使用協議或類似協議來實現此功能。
感謝您的任何迴應!
的Objective-C不支持多重繼承,你可能會發現是協議的最佳解決方案。 –
我該如何執行該操作?我不希望屬性是委託..我想默認值,例如在zoomable視圖我想默認的小尺寸,如果子類不覆蓋函數,類返回(50,50)。 – Rebecca
沒有真正好的方法來設置協議的默認值,因爲它應該是未實現的。你可以做的是從一個實現協議的類繼承,看看這個要點:https://gist.github.com/paulrehkugler/9647085 –