Ios 从其他类方法创建或更改UIimage

Ios 从其他类方法创建或更改UIimage,ios,objective-c,uiimage,Ios,Objective C,Uiimage,我正在尝试使用类方法从另一个类创建或更改UIimage。但是,当我试图在类控制器中处理视图时,我不能。e、 g.[self.view addsubview:…]这可能吗?最好的方法是什么?提前感谢。在第二个类中导入UIImage的头文件(最好使用UIIMageView),然后将其定义为对象。添加@property,@synthesis是第二个.m。引用应在addSubview之后工作,因为addSubview将了解导入的对象。假设这是模型类头文件,您可以定义uiimageview: @prope

我正在尝试使用类方法从另一个类创建或更改UIimage。但是,当我试图在类控制器中处理视图时,我不能。e、 g.[self.view addsubview:…]这可能吗?最好的方法是什么?提前感谢。

在第二个类中导入UIImage的头文件(最好使用UIIMageView),然后将其定义为对象。添加@property,@synthesis是第二个.m。引用应在addSubview之后工作,因为addSubview将了解导入的对象。

假设这是模型类头文件,您可以定义uiimageview:

@property (weak,nonatomic) IBOutlet UIImageView *modelImageView;
这是您的视图控制器及其实现文件,您可以这样使用:

#import "YourModel.h"
@interface yourViewController() {
YourModel *yourModel;
}
end
@implementation yourViewController
- (void) viewDidLoad {
[super viewDidLoad];
[self.view addSubView:yourModel.modelImageView];
}@end
这是一种直接的方法,可以让事情变得更好;只需定义一些控制
UIImageView
的方法,如changeColor setBackgroundColor等,并从viewController访问它们,例如:

[yourModel setColor:[UIColor greenColor] placeHolderImage:[UIImage ...]];

因此,我在这里试图解释的是,您可以在任何地方访问UIImageView,并且每个viewController都可以访问一个模型。

好的,我会尝试一下。感谢您的回复,但我想我没有解释清楚,我有两个类,其中一个包含UIImageView,viewcontroller.m但我想从secondcontroller.mOkey进行设置,我现在就知道了,但通常从一个视图切换到另一个视图是不好的。我建议您研究MVC体系结构,如果您解释您想用该图像视图做什么,我可以编辑关于您确切问题的答案。:)我忘了说对不起。在你的情况下,MVVM可能是比MVC更好的选择。好的,我想我现在有了它,但我正在做的是从另一个类调用类方法,并使用共享实例调用私有方法。这样做不好还是可以?in.m=静态解析器*sharedInstance=nil;sharedInstance=[[super allocWithZone:NULL]init];[sharedInstance hello];呼叫-(void)你好;看起来还可以,但请确保没有分配两次,但如果使用dispatch_once()可能会更好。有关更多信息,您可以查看以下内容: