2014-01-10 1 views
0

내 프로젝트에서 다양한 변수가있는 문자열을 만든 다음 내 자막에 삽입합니다. 시뮬레이터에서 그 점이 나타납니다. 그러나 IPad에서는 변수가 하나 인 경우 NULL을 표시하고 다른 변수는 표시하지 않습니다. 아무도 비슷한 문제를 경험 한 적이 있습니까? 제가 이미지를 게시 할 수 없습니다 생각으로Xcode 시뮬레이션은 UITableView 자막의 값을 표시하지만 IPad는 <null>을 표시합니다.

(충분하지 않은 평판은 지금까지) 나는 단순히 그것을 아래로 입력하여 재구성 할 수 있습니다

IOS 시뮬레이터 :

을 .......... .................................................. ....

토마스 겨울

2014년 1월 5일 - 영속 : 0.5 시간

.................... ................. ...........................

실제 장치 :

............ .................................................. ..

토마스 겨울

2014년 1월 5일 - 영속 (널) 시간

...................... ..........................................

문자열은 beeing입니다. initString을 사용하여 함께 쓴다. WithFormat 메서드는 변수를 포함합니다. 자막에서 여전히 h가 어떻게 보이는지를 보았지만 그 전에는 Duration을 사용하지 않았기 때문에 변수가 실제 장치에서는 존재하지 않는다고 생각할 수 있습니다.

NSNumberFormatter * formatter = [[NSNumberFormatter alloc] init];

[formatter setNumberStyle:NSNumberFormatterDecimalStyle]; 

[formatter setMaximumFractionDigits:2]; 

NSString * dauerString =[[NSString alloc]initWithFormat:@"Dauer: %@h",[formatter numberFromString:[[self.leistungListe objectAtIndex:indexPath.row]getDauer]]]; 

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 

[dateFormat setDateFormat:@"YYYY-MM-dd"]; 

NSString * dateString = [dateFormat stringFromDate:[[self.leistungListe objectAtIndex:indexPath.row]getDatum]]; 

NSString * detailTextString = [[NSString alloc]initWithFormat:@"%@ - %@",dateString,dauerString]; 

cell.detailTextLabel.text =detailTextString; 
+0

코드를 표시하면 도움이 될 수 있습니다. – SamB

답변

0

아마도 시뮬레이터와 장치에서 로케일이 다르게 설정되어있을 수 있습니다. 숫자로 변환 할 문자열이 고정 된 형식 인 경우 사용 된 십진수와 천 단위 구분 기호를 포함하여 정확한 형식을 지정해야합니다.

숫자 포맷터를 "십진 스타일"로 설정하면 장치 또는 시뮬레이터에서 다양한 설정을 취할 수 있습니다. 특히 유럽에서는 쉼표 (예 : Pi는 3,14159 ....)가 많이 사용됩니다.) 그러나 다른 곳에서는 기간 (3.14159)입니다. 변환중인 문자열은 시뮬레이터의 로케일에서 사용 된 소수점 구분 기호와 일치하는 이들 중 하나를 가지며 장치의 로케일은 다른 것을 갖습니다. 숫자 포맷터는 변환 할 수없는 문자열을 읽을 때 nil을 반환하며 이는 사용자가보고있는 것입니다.

수동으로 형식을 설정하거나 다른 방법을 고려하십시오. 숫자를 텍스트 파일, 웹 서비스 또는 사용자 항목에서 초기 구문 분석 이외의 문자열로 유지할 이유가 없습니다.

+0

이유는 왜 문자열에서 NSNumber에이 스위치를 만드는 이유는 데이터베이스에서 값을 얻고 문자열에 소수점 자릿수가 있기 때문입니다. 더보기 좋게 만들려면 다시 변환해야합니다. 나는 지금까지 다른 방법을 모른다. –

+0

네, 질문에 추가 정보를 추가 할 수 있습니까? – jrturton

+0

평판이 누락되어 사진을 업로드 할 수 없습니다. 가능한 깨끗한 상태로 재구성하려고했습니다. –

관련 문제