两个非常快速的问题,我在网上搜索,但找不到答案。

有什么方法可以从不同于该视图的viewController的类中向该视图调用块动画。我也无法弄清楚如何在与viewController不同的类中存在的方法中向该视图添加子视图(我可以做到的唯一方法是在我的viewController中使用[self.view addSubview:xxxxx];视图)

任何帮助将不胜感激和有益。

谢谢!!

最佳答案

在ApplicationDelegate上保留对YourViewController实例的引用,并在OtherClass中修改其子视图。

//in ApplicationDelegate.h
@property (strong, nonatomic) YourViewController *ref;

//in ApplicationDelegate.m
@synthesize ref;

self.ref = [[YourViewController alloc] initWithNibName:nil bundle:nil];



//in YourViewController.h
@property (retain, nonatomic) UIImageView *myImageView;

//in YourViewController.m
@synthesize myImageView;




//in OtherClass.m
[UIView animateWithDuration:DURATION delay:DELAY
                    options:OPTION
                 animations:^(void)
        {
                [[UIApplication sharedApplication] delegate].ref.myImageView.center=CGPointMake(100,100);
        }
                 completion:^(BOOL finished)
        {
                [[UIApplication sharedApplication] delegate].ref.myImageView.center=CGPointMake(200,200);
        }];

07-26 09:37