在UILabel中打印字母



大家好,在我的iPhone应用程序想打印一系列字符串在UILabel一个接一个,但只有最后的字符串现在显示。我试过NSTIMER,但它不起作用。有人能帮我吗?提前感谢

下面是我的代码:
//changing strings to char 
    char *cname1=[n1 cStringUsingEncoding:NSASCIIStringEncoding];
    char *cname2=[n2 cStringUsingEncoding:NSASCIIStringEncoding];

    for (int i = 0; i < [n1 length]; i++)
        {
            for (int j = 0; j < [n2 length]; j++){
            if ((cname1[i]==cname2[j]))
            {
                cname1[i]='*';
                cname2[j]='*';
                myString1 = [NSString stringWithFormat:@"%s", cname1];
                myString2 = [NSString stringWithFormat:@"%s", cname2];
                [self printlabel];
                break;
            }

    }
    -(void)printlabel{
        nam1.text = myString1; //set label1
        nam2.text = myString2; //set label2
        }

假设NSMutableArray中有10个UILabel

NSMutableArray* myAllLabel ;
int labelIndex = 0;

使用下面的代码作为参考。

- (void) startDisplayingLabel {
     labelIndex = 0;
    [NSTimer scheduledTimerWithInterval:2.0f target:self selector:@selector(showElapsedTime:) userInfo:nil repeats:YES];
}

showElapsedTime将在延迟2.0秒后被呼叫,您提供。

-(void) showElapsedTime: (NSTimer *) timer {
    if(labelIndex == 10)
    {
      [timer invalidate];
    }
    else 
    {
         //Now you have your mylabel , you could add it to the superview 
         UILabel* mylabel = (UILabel*)[myAllLabel objectAtIndex:labelIndex];
         // Write your code here 
    }
    labelIndex++;
}

调用startDisplayingLabel一次,我将在2.0秒后显示每个UILabel

可能NSThread会帮到你

试着把你的代码改成

 for (int i = 0; i < [n1 length]; i++)
        {
            for (int j = 0; j < [n2 length]; j++){
            if ((cname1[i]==cname2[j]))
            {
                cname1[i]='*';
                cname2[j]='*';
                myString1 = [NSString stringWithFormat:@"%s", cname1];
                myString2 = [NSString stringWithFormat:@"%s", cname2];
                [self printlabel];
                break;
            }
        [NSThread sleepForTimeInterval:2.0];//sleeps for 2 seconds.
    }

最新更新