2013-06-24 3 views
0

사용자가 해당 제품에 대한 제품 및 정보를 삽입 할 수있는 앱을 개발 중입니다. 한 제품에 대한 모든 정보는 사용자 정의 TableViewCell의 다른 텍스트 필드에 삽입됩니다. 나중에 제품의 배열을 사용하여 각 제품을 데이터베이스에 삽입하고자하므로 2 차원 배열의 제품을 만들어야합니다.다른 방법으로 tableviewCell의 textfield에 액세스하는 방법

배열을 만들려면 사용자가 텍스트 필드를 입력하지 않을 때마다 각 텍스트 필드의 텍스트를 저장해야합니다. 문제는 특정 텍스트 필드에 대해 textFieldDidEndEditing 메서드를 만들 수 없다는 것입니다.

그래서 곧 넣어 :

을 좀 더 텍스트 필드가있을 때 하나 UITableViewCell에서, 어떻게 개별적으로 (바람직하게는 textFieldDidEndEditing 방법) 다른 방법에서 이러한 텍스트 필드의 모든 액세스하려면?

+0

당신이 textFieldDidEndEditing의 특정에 textField를 확인할 수 있습니다. – keen

+1

ur textfield에 태그를 지정하십시오. 해당 텍스트 필드에 액세스하려면 해당 태그를 사용하십시오. –

+0

@BSThakrar 어떻게 설명 할 수만 있다면 하루를 바꿀 수 있습니다. 나는 아마 무언가를 놓치고 싶지만 초보자이기 때문에 여기저기서 도움이 필요합니다. – Joris416

답변

1

두 가지 방법
1) 각 텍스트 필드
2에 태그 값을 지정)하여 텍스트 필드에 각각의 텍스트 필드에

-(void)textFieldDidEndEditing:(UITextField *)textField 
{ 
    if([textField.restorationIdentifier isEqualToString:@"YourID"]) 
    { 
     //store in array 
    } 
      OR 
    if(textField.tag == 1) 
    { 
     //store in array. 
    } 

} 
+0

작동하는 것 같습니다. 죄송합니다. 더 많은 작업을 수행하기 위해 코드를 삽입해야했지만, 문제가 해결되었습니다. 정말 고맙습니다! – Joris416

0

할당 태그를 복원 ID를 제공하여 작업을 수행 할 수 있습니다. 해당 텍스트 필드에 액세스하려면 해당 태그를 사용하십시오.

0

당신의 UITextField에 메소드를 추가 :

[textfield addTarget:self action:@selector(textfieldcall:) forControlEvents:UIControlEventEditingDidEnd]; 
textfield.tag=100; 

호출이 방법

-(void)textfieldcall:(UITextField*)sender 
{ 
    if (sender.tag==100) { 
     //do your stuff 
    } 
} 
+0

지금 당장이 작품을 만들려고 노력하고 있습니다 ... – Joris416

+0

@Imaginedigital 대답 내 대답을 만족하면 대답 –

관련 문제