2011-01-11 4 views
2

私はiPadゲームを開発しています。私にはこのような状況があります。ユーザー/プレイヤーのゲームセンターのアカウントがで署名されていない場合は、どちらかに、プレイヤーが選択できるように、警告ボックスを促すメッセージが表示されます:ユーザーがGame Centerのログインをキャンセルするときに処理する機能はありますか?

  1. ログイン既存のアカウント

  2. を新しいアカウントを作成

  3. キャンセル

私は第3のオプション(「キャンセル」)に興味があります。ユーザーが「キャンセル」オプションをクリックしたときに、関数を処理または割り当てる方法。私はこれを試みた:

- (void) alertView:(UIAlertView *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex { 
    if(buttonIndex == 2){ 
     NSLog(@"Cancel called"); 
    .... 

しかし働いていない。他の解決策はありますか?

おかげ

答えて

3

は、これはおそらく非常に遅れていると誰ももう気にしないが、これを処理する方法は、あなたのゲームセンターの認証ハンドラです。具体的には、ユーザが「キャンセル」を選択した場合、あなたはGKErrorCancelledコード取得します:再び

- (void) authenticate { 

    GKLocalPlayer* localPlayer = [GKLocalPlayer localPlayer]; 
    [localPlayer authenticateWithCompletionHandler: ^(NSError *error) { 

     if(error.code == GKErrorCancelled) { 
      //this is the case you're interested in 
     } 

     if(localPlayer.authenticated) { 
      //rock on 
     } 
    }]; 
} 

を、このポストは、今では、おそらく古代史であるが、いずれの場合に役立ちます希望:)

関連する問題