2011-04-28 4 views
0

모두 안녕하세요, 내 iPhone 앱에서 UILabel에 일련의 문자열을 하나씩 인쇄하려고하지만 마지막 문자열 만 표시됩니다. NSTIMER를 시도했지만 작동하지 않습니다. 사람이 여기 UILabel에 알파벳 인쇄

사전

에 와요 고마워요 도움이 될 수 있습니다 것이 내 코드입니다 :

//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 

     } 
+0

당신이 당신의 관련 코드를 게시 할 수 있습니다, 당신은

같은 코드를 변경해보십시오 도움이 될 것입니다? – Jamie

+0

몇 가지 코드를 넣는 것을 잊었다 고 생각합니다. – Gypsa

답변

0

의가 가정하자, 당신은 NSMutableArray 10 UILabel 있습니다.

참고로 아래 코드를 사용하십시오.

- (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++; 
} 

일단 시작 표시를하면, 각 UILabel은 정확하게 2.0 초 후에 표시됩니다.

+0

고맙습니다. 도움을 받으 셨습니다 ... – viru

0

아마 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. 
    }