2013-11-01 2 views
0

핵심 데이터 모델을 설정하고 텍스트 입력 상자를 사용하여 데이터를 기록하고 있습니다. 내 코드는 다음과 같습니다 : 내가 입력 한 것의 앞에 텍스트를 추가하는 것을 시도하고 두 번째 항목 제목 '버전'에 대한핵심 데이터 항목에 텍스트 추가

NSManagedObject *newDevice = [NSEntityDescription insertNewObjectForEntityForName:@"Device" inManagedObjectContext:context]; 
NSNumber *timetickNumber = [NSNumber numberWithInt:timeTick]; 
[newDevice setValue:timetickNumber forKey:@"name"]; 
[newDevice setValue:self.versionTextField.text forKey:@"version"]; 
[newDevice setValue:self.companyTextField.text forKey:@"company"]; 

합니다. 예를 들어 'This is'라고 말하면 옆에 입력 한 텍스트를 표시합니다. 이견있는 사람? 미리 감사드립니다!

답변

0

문자열을 연결하려는 것처럼 들리 네요. 아마도 다음과 같을 것입니다 :

NSString *versionString = [NSString stringWithFormat:@"This is: %@", self.companyTextField.text] 

versionString 값은 "This is : text field from text field here"입니다.

그런 다음 당신이 단지 것입니다 핵심 데이터를 저장합니다 :

[newDevice setValue:versionString forKey:@"company"]; 
+0

상사 더 나은! 엄청 고마워! – PanicDev

+0

기꺼이 도와 드리겠습니다! :-) –

0

그것은 형식 및 데이터를 혼합하는 좋은 방법이 아니다. 모델 - 뷰 - 컨트롤러 패턴을 기억하십시오. "This is"를 저장하면 빠르게 중복되고 어쨌든 다른 언어로 올바르게 표시되지 않습니다. 이것은 많은 관점에서 상당히 문제가되는 디자인입니다.

대신 코드에서와 같이 값을 Core Data에 저장해야합니다. 표시가 필요한 경우이 데이터가 표시됩니다 (예 : UILabel에서 필요한 텍스트를 추가 할 수 있습니다. 나중에 변경할 필요가 없습니다.

label.text = [NSString stringWithFormat:@"This is %@.", device.company]; 

또는

label.text = [NSString stringWithFormat:@"%@%@", 
    NSLocalisedString(@"This is ", "string to present the company"), 
    device.company]; 
관련 문제