Bản địa hóa đang hoạt động đối với các ngôn ngữ khác ngoại trừ tiếng Anh khá tốt. Mỗi lần tôi biên dịch ứng dụng, tôi thấy tên khóa thay vì chuỗi được bản địa hóa. Ví dụ:Quốc tế hóa: Chỉ tên khóa được hiển thị thay vì chuỗi được bản địa hóa trong Mô phỏng
NSLocalizedString(@"WelcomeKey", @"")
Trong Localizable.strings tôi có các mục tương ứng:
"WelcomeKey" = "Welcome";
Trong mô phỏng tôi luôn luôn lấy tên chính WelcomeKey
thay vì Welcome
. Trên thiết bị, điều này hoạt động hoàn hảo. Trong giả lập không!
Tôi cũng phát hiện ra rằng tệp EN Localizable.strings của tôi chứa đầy "???????" biểu tượng. Vì vậy, tôi đặt trong các giá trị cũ và lưu nó trong Xcode. Tôi cũng đã thêm mục nhập theo cách thủ công thay vì sử dụng genstrings
. Trong giả lập ngôn ngữ thứ hai cũng hoạt động hoàn hảo. Chỉ có tiếng Anh dường như làm cho một vấn đề. Có lẽ tôi đã xóa English.lproj và tạo một thư mục EN.lproj?
Tôi cố gắng để:
- Rỗng cache
- sạch tất cả các mục tiêu
- Xóa "Hỗ trợ người dùng/xxx/Library/Application/iPhone Simulator/Người dùng" thư mục
- Restart Mac
- Chuyển đổi thành UTF-16
- Tạo Localizable.strings mới cho EN
- Del ete EN.lproj thư mục và tập tin. Thực hiện bản địa hóa hoàn toàn mới.
Tôi đang thiếu gì? Tôi nghĩ rằng giả ghét tiếng Anh ...
Edit:
Vì vậy, tôi đã cố gắng để biên dịch ứng dụng này trên một máy Mac. Có nó hoạt động mà không có vấn đề trong giả lập! Vì vậy, hoặc là cài đặt trong Xcode hoặc sự cố bộ nhớ cache.
Không có workie cho tôi – jjxtra
Haha cảm ơn bạn, một điều đơn giản như vậy nhưng không có hướng dẫn nào đề cập đến nó! – Denis