2010-06-03 30 views
25

Tôi có mẫu cho email mà tôi đã đặt trong tệp chuỗi được bản địa hóa và tôi đang tải chuỗi có macro NSLocalizedString.Chuỗi nhiều dòng trong chuỗi chuỗi được bản địa hóa mục tiêu c

Tôi không muốn đặt từng chuỗi riêng của nó bằng một khóa duy nhất. Trong Objective-C, tôi có thể tạo ra một chuỗi multiline con người có thể đọc được như vậy:

NSString *email = @"Hello %@,\n" 
    "\n" 
    "Check out %@.\n" 
    "\n" 
    "Sincerely,\n" 
    "\n" 
    "%@"; 

Tôi cố gắng để đưa rằng trong một .strings nộp với:

"email" = "Hello %@,\n" 
    "\n" 
    "Check out %@.\n" 
    "\n" 
    "Sincerely,\n" 
    "\n" 
    "%@"; 

Nhưng tôi nhận được lỗi sau tại xây dựng thời gian:

CFPropertyListCreateFromXMLData(): Old-style plist parser: missing semicolon in dictionary. 
email-template.strings: Unexpected character " at line 1 
Command /Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copystrings failed with exit code 1 

tôi có thể nối chúng lại với nhau như thế này:

"email" = "Hello %@,\n\nCheck out %@.\n\nSincerely,\n\n%@"; 

Nhưng đó sẽ là một mớ hỗn độn để duy trì, đặc biệt là khi email được lâu hơn.

Có cách nào để thực hiện việc này trong tệp chuỗi được bản địa hóa không? Tôi đã thử thêm dấu gạch chéo ngược ở cuối mỗi dòng, không có kết quả.

Trả lời

44

Chỉ cần sử dụng trực tiếp các dòng mới.

"email" = "Hello %@, 

Check out %@. 

Sincerely, 

%@"; 
+0

Điều đó đã xảy ra. Cảm ơn! –

+1

'\ n' đã hoạt động cho tôi! – byJeevan

+4

Nhưng sau đó, màu sắc của trình soạn thảo văn bản sẽ không hiển thị chính xác (chuỗi không hoàn toàn bằng một màu) – Daniel

Các vấn đề liên quan