您好我添加了子视图有问题。我在method1中有这段代码:
UIActivityIndicatorView *spinner = [[UIActivityIndicatorView alloc]
initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
spinner.center = CGPointMake(160, 500);
spinner.hidesWhenStopped = YES;
[self.view addSubview:spinner];
[spinner startAnimating];
我要添加
[spinner stopAnimating]
另一种方法2.
我该怎么做?
答案 0 :(得分:2)
在你的.m文件中(除非你需要从另一个类中执行此操作,否则不需要在.h中执行此操作):
@interface MyClass ()
@property (strong, nonatomic) UIActivityIndicatorView *spinner;
@end
@implementation MyClass
- (void)someMethod
{
// where you were calling the code from your post, do this:
self.spinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
self.spinner.center = CGPointMake(160, 500);
self.spinner.hidesWhenStopped = YES;
[self.view addSubview:self.spinner];
[self.spinner startAnimating];
}
- (void)someOtherMethod
{
[self.spinner stopAnimating];
}
答案 1 :(得分:1)
问题是您在代码中设置了spinner
而没有保留引用。因此,另一种方法找不到它。你有两个选择:
创建实例变量时将spinner
分配给实例变量,以便其他方法可以使用该实例变量访问微调器
授予spinner
一个tag
,以便其他方法可以通过其标记1>}将其作为view
的子视图