1

我想在我的应用程序中实现两个功能作为颜色填充和视图放大。但问题是我无法同时实现这两个功能。因为我必须为我的 UIView 的两个功能指定两个不同的类引用,这是不可能的。

换句话说,我有一个视图,并且我将类引用作为 UIView (用于颜色功能)。但是对于放大功能,我必须将类引用作为 MagnifyingView 提供给该视图。因此,不可能同时实现这两个功能。

那么我怎样才能在不同的条件下给 UIView 和 ACMagnifyingView 两个不同的类引用到单个 UIView 呢?

我怎样才能做到这一点 ?

谢谢。

4

1 回答 1

1

你试过Categories吗?检查本教程http://iphone-obsessed.blogspot.com.br/2010/05/tutorial-creating-class-categories-in.html

你能提供更多信息吗?也许如果您提供更多信息,我可以为您提供更多帮助

编辑

如何Categories工作:

你有一UIView门课,你想使用一些你重复很多次的方法。你是做什么的:你创建一个类别UIView并将这个方法添加到你的类别中,如下所示:

文件UIView+CustomView.h

#import <UIKit/UIKit.h>

@interface UIView (CustomView)

- (void)myCustomMethod;

@end

文件UIView+CustomView.m

#import "UIView+CustomView.h"

@implementation UIView (CustomView)

- (void)myCustomMethod {
  // Whatever you want to do with this UIView
}

@end

现在,每次您需要使用时,myCustomMethod您只需导入,该类中的UIView+CustomView.h所有UIView对象都可以访问此方法。

像这样:

文件MainViewController.m,标题:

#import "UIView+CustomView.h"

文件MainViewController.m,正文,在任何方法中:

[myView myCustomMethod];

考虑到这一点,我相信您可以添加您ACMagnifyingView的子类和此类别以使用您的自定义视图

于 2012-07-23T12:17:41.787 回答