4

このフォーラムには、「wait_fences: 返信を受け取ることができませんでした」に関する質問がすでにいくつかありますが、提案された解決策はどれもうまくいきません (ただし、軽減には役立ちました)。

アプリの起動時に到達可能性チェックを行い、探しているホストに到達できない場合は、UIAlertView をポップアップ表示します。最初はView Controllerをセットアップする前にこれを行っていましたが、「wait_fences」問題の原因の1つは、まだビューを表示していない場合、レスポンダーチェーンが適切にセットアップされていないことであることがわかりました。すべてを -viewDidAppear に移動しました。基本的に、これは私が持っているものです:

- (void)viewDidAppear:(BOOL)animated
{
    [super viewDidAppear:animated];

    // Figure out what the reflections name is, then check to see if it can find it online;
    // If it can't, -informUserSiteIsNotReachable is called, below
    [self retrieveReflectionByName:self.todaysReflectionName];

    [self displayReflectionByName:self.todaysReflectionName];
}

- (void)informUserSiteIsNotReachable 
{
    SEL messageSelector;

    if (NO == [self internetIsReachable]) {
        messageSelector = @selector(internetNotAccessible);
    } else {
        messageSelector = @selector(reflectionsSiteNotAccessible);
    }
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:[Strings alertViewTitleWhenSiteIsUnreachable] message:[Strings performSelector:messageSelector]  delegate:self cancelButtonTitle:@"OK" otherButtonTitles:NULL];
    [alert show];
    [alert release];
}

私はwait_fencesの問題を取り除くことができないようです:何か提案はありますか?

4

1 に答える 1

0

ここでも私のプロジェクトで同じ問題に直面し、「wait_fences」の問題を解決しました。

ここで、次のようにコードを 1 つ変更できます。

- (void)informUserSiteIsNotReachable 
{
    SEL messageSelector;

    if (NO == [self internetIsReachable]) {
        messageSelector = @selector(internetNotAccessible);
    } else {
        messageSelector = @selector(reflectionsSiteNotAccessible);
    }

    [NSTimer scheduledTimerWithTimeInterval:0.001 target:self selector:@selector(Show_AlertMessage) userInfo:nil repeats:NO];
}

- (void) Show_AlertMessage
{
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:[Strings alertViewTitleWhenSiteIsUnreachable] message:[Strings performSelector:messageSelector]  delegate:self cancelButtonTitle:@"OK" otherButtonTitles:NULL];
    [alert show];
    [alert release];
}

これは私にとってはうまくいきます。この wait_fences の問題がすぐに解消されることを願っています。それでも問題が解決しない場合はお知らせください。

于 2011-07-02T08:09:38.240 に答える