我有一个刷新按钮,在我的导航栏视图点击
buttonItem = [[UIBarButtonItem alloc]initWithBarButtonSystemItem:UIBarButtonSystemItemRefresh target:self action:@selector(buttonItemClicked)];
self.navigationItem.rightBarButtonItem = buttonItem;
-(void)buttonItemClicked{
NSLog(@"buttonItemclicked");
myView.labelName.text = nil;
myView.otherLabelName.text = nil;
[spinner startAnimating]
[spinnerView setHidden:NO];
[self requestAPI];
[spinner stopAnimating];
[spinnerView setHidden:YES];
}
如果我去进出来看,它工作正常。但是,当我在buttonItemClicked中调用相同的方法时,它不起作用。我也尝试在我的操作方法中调用视图方法,但这也不起作用。
我试图做的是将我的标签设置为零,添加我的UIActivityIndicatorView
并在标签重新设置后将其删除。
我已经尝试[self.view setNeedsDisplay];
刷新它自我工作,但动画不起作用。
有什么建议吗?
@Sinetris如果将我的标签设置为零并开始动画,在我的动作方法中它可以正常工作,即动画。如果我调用requestAPI,则动画完成。不知道可能是什么原因造成的。 – Magnus 2011-06-12 15:15:46
@MagnusAPI有什么要求吗?如果您从Web获取数据(或者您的方法运行几秒钟),则需要另一个线程(请参阅Grand Central Dispatch中的“简化”线程和ASIHTTPRequest以进行异步Web调用)。 – Sinetris 2011-06-12 15:31:36
我从Web服务获取数据并将获得的响应放入UILabels中。但我不明白为什么它在我的视图方法中工作,而不是在我的UIBarButtonItem的操作方法中。 – Magnus 2011-06-12 15:39:21