我有一个类方法,我想在下面执行这段代码。问题是在类方法中不能使用 self.view 之类的东西。所以我有点卡在这里。我发现了一些关于使用 [self class] 的东西,但我真的不明白如何在我的代码中使用它。
for (UIView *view in [self.view subviews])
{
if([view isKindOfClass:[Circle class]]) {
[UIView animateWithDuration:0.2 delay:0 options:UIViewAnimationCurveLinear animations:^{
view.alpha = 0;
view.frame = CGRectMake(self.view.frame.size.width/2-35, self.view.frame.size.height/2-35, 70, 70);
} completion:nil];
[view performSelector:@selector(removeFromSuperview) withObject:nil afterDelay:0.4];
} else {
//
}
}
更新更多信息
我有一个 Circle 课程。在那个班级我有这个方法
- (IBAction)playerTap:(id)sender {
NSString *numberString;
numberString = [NSString stringWithFormat:@"%i",indexNumber+1];
if (indexNumber < 14)
{
if ([label.text isEqualToString:numberString])
{
[UIView animateWithDuration:0.1 animations:^{
self.transform = CGAffineTransformMakeScale(1.2, 1.2);
} completion:^(BOOL finished) {
[UIView animateWithDuration:0.05 animations:^{
self.transform = CGAffineTransformIdentity;
self.alpha = 0.2;
} completion:nil];
}];
++indexNumber;
}
} else {
self.alpha = 0.2;
[NUMViewController gameHasEnded];
}
}
当 indexNumber(静态变量)达到一定数量时,我希望执行 NUMViewController 类中的方法。IE 中的“gameHasEnded”方法。
这将是本文开头代码的一种方法。它将从视图中删除所有其他圆实例。
一个类方法对我来说似乎是最合乎逻辑的,因为我没有在圆对象上执行该方法,但它会影响我其他类中的所有对象。