IOS / Objective-C:调用另一个类(VC)方法不起作用

时间:2017-03-30 10:05:56

标签: ios objective-c

我已经搜索并搜索了这个问题的答案,我发现的解决方案似乎没有用,所以我想我做错了什么:我想要叫这个方法

-(void)customFade:(UILabel *)theLabel withDelay:(float)delayAmount {

    [UIView animateWithDuration:0.5
                          delay:delayAmount
                          options:UIViewAnimationOptionCurveEaseInOut
                          animations:^{
                          [theLabel setAlpha:1.0f];
                          [theLabel setAlpha:0];
                          }completion:nil];
}

从一个名为View Controller的VC到另一个VC,但是尽管有导入,但它并没有得到识别......这就是我在想要的VC上尝试的东西:

- (void)viewDidLoad {
    [super viewDidLoad];
    ViewController *ViewController = [[ViewController alloc] init];

    [ViewController customFade:_label withDelay:0.3];
} 

警告说"没有可见的@interface for" ViewController"声明选择器alloc

有人可以帮帮我吗?我对此有点新意,谢谢

1 个答案:

答案 0 :(得分:1)

  

如果您输入的方法名称输入错误,或者该方法根本不属于该类且且您的课程中不存在,则会发生此类错误。

并确保一旦你的VC是UIViewController的子类

  

@interface ViewController:UIViewController

更改您的实例对象类型并检查一次

  ViewController *vc = [[ViewController alloc] init];

  [vc customFade:_label withDelay:0.3];

并像

一样更改动画
[UIView animateWithDuration:0.5
                      delay:delayAmount
                      options:UIViewAnimationOptionCurveEaseInOut
                      animations:^{
                      [theLabel setAlpha:1.0f];

                      }completion:{
                     [theLabel setAlpha:0];
       }];

有关详细信息,您可以从here

获取参考