Game Center Custom Leadorboard - هل أحتاج حقًا إلى إجراء مكالمتين للحصول على اسم مستعار للاعب؟

StackOverflow https://stackoverflow.com/questions/4132602

سؤال

أنا أستخدم Game Center لإعداد لوحة المتصدرين المخصصة ، عندما يتعلق الأمر باسترداد البيانات الخاصة بـ UitableView الخاص بي ، أحصل فقط حصلت على كل النتيجة.

لا أفهم لماذا فعلت Apple مثل هذا ، بالتأكيد درجة على لوحة النتائج لا معنى لها دون اسم اللاعب الذي حصل عليه؟

على أي حال ، يبدو أن الطريقة الوحيدة التي يمكنني من خلالها الحصول على اسم اللاعب هي استخدام loadplayersforidentifiers: withCompletionHandler: طريقة فئة gkplayer. هذا يبدو وكأنه خطوة غير ضرورية - هل يمكن لأي شخص أن يؤكد ما إذا كان هذا هو ما يجب القيام به فقط للحصول على الاسم المستعار للاعب؟

هل كانت مفيدة؟

المحلول

نعم .. إنه يخزن فقط معرف اللاعب .. حتى لتحميل الاسم المستعار الفعلي ، ستحتاج إلى تمرير اللاعب والحصول على الاسم المستعار ..

في حال لم تكن متأكدًا من الرموز الفعلية:

إذا كنت ترغب في الحصول على الاسم المستعار للاعب المحلي:

[[GKLocalPlayer localPlayer] alias];

لاعبين آخرين:

    [GKPlayer loadPlayersForIdentifiers:playerIDsArray withCompletionHandler:^(NSArray *players, NSError *error)
   {
        if (error != nil)
        {
 // Handle the error.
        }
        if (players != nil)
        {

for(int i = 0; i<array_size; i++)            
[NameArray objectAtIndex:i]  = [[players objectAtIndex:i]alias];

        }
        }];

أتمنى أن يساعد ...

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top