我正在制作一个允许用户在我的 IOS 应用程序中输入数据的表单。该表格允许用户输入大量重复数据。所以,有时,这个过程需要时间,我想在这个过程中显示一个 UIActivityIndicatorView。
不幸的是,微调器在过程结束时只出现一秒或更短,而不是像预期的那样在开始时出现。
有一些代码:
- (void) manageSpinner{
spinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhiteLarge];
[spinner setCenter:CGPointMake(self.view.bounds.size.width/2.0, self.view.bounds.size.height/2.0)]; // I do this becau I'm in landscape mode
UIImageView *imageView = [[UIImageView alloc]initWithFrame:self.tableView.bounds];
UIImage *image = [UIImage imageNamed:@"dark_gradiant.jpg"];
[imageView setImage:image];
[imageView addSubview:spinner];
[self.tableView addSubview:imageView];
[spinner startAnimating];
}
//On click save by the user
- (IBAction)save:(id)sender{
//Collect information from the form
myObject.name = nameTF.text;
[...]
if(informations OK[...]){
//Manage spinner
[self manageSpinner];
//Add : this is the long process
for (int i=0; i<nbRepeatChooseByUser; i++) {
[myObject register];
}
//Call the delegate that will dismiss the form
[self.delegate theSaveButtonOnTheAddMyObjectTVCWasTapped:self];
}
}
在添加方法之前调用微调器,但它似乎是在该过程之后设置的。
谢谢,
亚历山大