2011-04-08 4 views
0

hii 얘들 아, 나는 크로스 워드 응용 프로그램에서 일하고 있습니다. 나는 UITextField를 각 셀에 입력하여 사용자가 단어를 입력 할 수 있도록하고 커서를 인접 필드로 이동시키는 코드도 구현했습니다. textField가 가로 및 세로 모두 사용할 수있는 경우. 나는 각 textField가 하나의 문자만을 받아 들일 수 있도록했다.커서가 다른 필드로 이동하려면

내 요구 사항 : 내가 커서가 다음 수직 단어로 이동해야 수직 단어를 채우고 있어요 -if에는 수직 필드 내가 수평 단어를 작성하고 - 경우 첫 번째 수평 단어

로 이동해야 사용할 수없는 경우 커서는 다음 수평 단어로 이동한다 차에는 수평 필드를 사용할 수없는 경우 내가보기를 배치하기위한 관점에서의 UITextField를 배치

최초의 수직 단어

-(IBAction)textFieldEditingChanged:(CrossWordTextField*)textField{ 
int difference; 
if ([textField.text length]==1) { 
    //[textField resignFirstResponder]; 
    difference=13; 
    if (horizontalDirection) { 
     difference=1; 
    } 
} 
else if([textField.text length]==0){ 
    [textField resignFirstResponder]; 
    difference=-13; 
    if (horizontalDirection) { 
     difference=-1; 
    } 
} 

for (UIView *cellView in crossWordView.subviews) { 
    if (cellView.tag==textField.superview.tag+difference) { 
     for (CrossWordTextField *nextTf in cellView.subviews) { 
      if ([nextTf isKindOfClass:[CrossWordTextField class]]) { 
       [nextTf becomeFirstResponder]; 
      } 
     } 
    } 
} 

}로 이동한다 각각의 모든 세포. crossWordTextField는 UITextField를 확장하는 클래스입니다. 이 클래스를 가져 와서 textField의 속성을 사용할 수있게했습니다.

plz이 점에 대해 도움이됩니다. 필요하다면 많은 정보가 필요하다면 필자는 필요한 정보를 제공 할 것이다. 사전에

TNQ

답변

0

난 당신이 bidimensional 매트릭스 (배열)과 함께 일해야 생각합니다. 설명하기는 어렵지만 사각형과 그 경계로 크로스 워드 퍼즐을 사용하면 크로스 워드 퍼즐이 매트릭스 내에 들어갈 수 있다고 생각합니다. 따라서 텍스트 상자가있는 요소와 아무것도없는 요소가 있습니다 (NULL). 텍스트 상자에 초점을 맞추면 해당 행렬의 이웃 텍스트 필드를 쿼리 할 수 ​​있습니다. 예를 쓸 충분한 시간이 없지만, 이것이 당신을 해결책으로 생각하기를 바랍니다.

관련 문제