1
テーブルセルをクリックすると、次のビューをロードする前に1-2秒の短い遅延があります。その間にアクティビティインジケータが表示されているアプリがいくつか見られました。これが私のやりたいことです。私はこのようなものを追加しましたTablecellクリックの短い遅延
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
UIActivityIndicatorView *spinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleWhite];
spinner.frame = CGRectMake(200,200,200,200);
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
cell.accessoryView = spinner;
[spinner startAnimating];
[spinner release];
VenueViewController *vviewcontroller = [[VenueViewController alloc] initWithNibName:@"VenueViewController" bundle:[NSBundle mainBundle]];
[self.navigationController pushViewController:vviewcontroller animated:YES];
[vviewcontroller release];
vviewcontroller = nil;}
しかしこれも遅れて表示され、次のビューが表示される直前です。それは、表のセルをクリックした後1-2秒間アプリがフリーズするように見えるので、アクティビティインジケータは表示されません。
なぜperformSelectorを使用しますか? – TompaLompa
次のループサイクルで実行待ちのため、詳細情報:http://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/Multithreading/RunLoopManagement/RunLoopManagement.htmlおよびhttp:// developer。 apple.com/library/ios/#documentation/Cocoa/Reference/Foundation/Classes/NSObject_Class/Reference/Reference.html#//apple_ref/occ/instm/NSObject – Williew
ありがとうございます。 performSelectorは何の違いもありませんでしたが、私はiPad 1でテストしています。遅延は新しいiPadではあまり問題にはならないと思います。最後の質問ですが、クリックした表のセルの中でどのようにスピナーを動かすことができますか?今はステージを中心にしています。 – user1104325