كيف يمكن الحصول على قيمة حقل النص قبل عرض تنبيه باستخدام Cocos2d؟

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

  •  03-07-2019
  •  | 
  •  

سؤال

واني اسعى الى تطوير تطبيق باستخدام Cocos2d. لا أستطيع الحصول على قيمة من حيز النص. كيف يمكن الحصول على قيمة حقل النص (في طريقة عرض تنبيه) باستخدام Cocos2d؟

-(void)timed1: (id)sender 
{
    UIAlertView* dialog = [[[UIAlertView alloc] init] retain];
    [dialog setDelegate:self];

    [dialog setTitle:@"Enter Time:"];
    [dialog setMessage:@" "];
    UITextField * nameField = [[UITextField alloc] initWithFrame:CGRectMake(20.0, 45.0, 245.0, 25.0)];
    [dialog addSubview:nameField];
    [nameField setBackgroundColor:[UIColor whiteColor]];
    CGAffineTransform moveUp = CGAffineTransformMakeTranslation(0.0, 70.0);
    [dialog setTransform: moveUp];
    [dialog setBackgroundColor:[UIColor clearColor]];
    [dialog addButtonWithTitle:@"Done"];
    [dialog show];

    nameField.clearButtonMode = UITextFieldViewModeWhileEditing;
    nameField.keyboardType = UIKeyboardTypeNumbersAndPunctuation;
    nameField.keyboardAppearance = UIKeyboardAppearanceAlert;
    nameField.autocapitalizationType = UITextAutocapitalizationTypeWords;

        //  timeStatus is a int type global variable
    timeStatus =[nameField.text intValue]; // this line not working i can't getting value namefield


    [dialog release];
    [nameField release];

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

المحلول

ويتم التعامل مع أوراق العمل والتنبيهات بشكل غير متزامن. في قضيتك، ورسالة [عرض الحوار] مجرد جداول الحدث عرض لبعض إعدام لاحق (التعامل معها من قبل حلقة شوط الرئيسي). إذا وضعت في عدد قليل من NSLog) الصورة (، سترى أن [إظهار] رسالة ترجع على الفور تقريبا، وعند هذه النقطة قد المستخدم الخاص بك لم تدخل أي بيانات، والنص nameField هو فارغ، وهذا يحول إلى int 0 .

وأنت تريد حظر، حوار مشروط مع مدخلات - لم يتم تصميم أوراق العمل والتنبيهات لإدخال المستخدم خارج نعم / لا / إلغاء زر يدفع. سيكون لديك لسلق وجهة نظر خاصة بك: ليس من الصعب جدا، ولكن ذلك يتطلب المزيد من العمل من استخدام ورقة عمل / تنبيه

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