1
我正在做同步Web請求,並且我想顯示進度,但更重要的是,只要點擊「開始」關閉比賽類似於打開NetworkActivty微調器或更改標籤。如何暫停我的應用程序足夠長的時間以使屏幕「趕上」
我意識到進度條可能要等到我有時間來異步寫入提取,但是我可以讓程序等到標籤發生變化?或者至少有一種方法來僞造它?
在TouchUpInside上我有一個UIButton。 。 。
-(IBAction)startButtonPressed
{ [UIApplication的sharedApplication] .networkActivityIndicatorVisible = YES;
NSString *lastUpdate = [[self getLastUpdateDate] stringByReplacingOccurrencesOfString:@" " withString:@"%20"];
startButton.enabled = NO;
cancelButton.enabled = NO;
resetSwitch.enabled = NO;
cleanSwitch.enabled = NO;
//check the # of customer updates and update accordingly
statusLabel.text = @"Updating Customers. . .";
//[self performSelector:(@selector(updateProgress:withStatus:)) withObject:0.0f withObject:@"Updating Customers. . . " afterDelay:500];
//[self performSelector:(@selector(updateProgressIndicators)) withObject:nil afterDelay:0];
if (clean) {
[self deleteALL];
}
if ([self customersCount] < 1000 && !reset)
[self addCustomers:lastUpdate];
else
[self addCustomers:nil];
//check the # of product updates and update accordingly, reset does not affect products
statusLabel.text = @"Updating Products. . .";
if ([self productsCount] < 25000 || !clean)
[self addProducts:lastUpdate];
else
[self addProducts:nil];
//check the # of vendor updates and update accordingly, reset does not affect vendors
statusLabel.text = @"Updating Vendors. . . ";
if ([self vendorsCount] < 1000 || !clean || [[self fetchVendor:@"0002"] count] == 0) {
[self addVendors:lastUpdate];
}else{
[self addVendors:nil];
}
statusLabel.text = @"Updating History. . . ";
[self getHistory];
statusLabel.text = @"Updating Custom Pricing. . . ";
if ([self customPricesCount] < 500 && !reset) {
[self addCustomPrices:lastUpdate];
}else{
[self addCustomPrices:nil];
}
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"MM-dd-yyyy HH:mm:ss"];
[self setLastUpdateDate:[dateFormatter stringFromDate:[NSDate date]]];
[dateFormatter release];
statusLabel.text = @"Done!";
cancelButton.enabled = YES;
cancelButton.tag = 1;
cancelButton.titleLabel.text = @"Close";
startButton.enabled = NO;
[UIApplication sharedApplication].networkActivityIndicatorVisible = NO;
}
太棒了!你是塞爾吉奧,是個紳士和學者!完善! –
你太客氣了,謝謝。很高興有幫助。 – sergio