2013-07-24 24 views
7

Tôi đã tạo thư mục values-zh_CN trong thư mục res của mình để bản địa hóa tiếng Trung giản thể. Eclipse không chấp nhận tên thư mục đó, nó đánh dấu nó là một lỗi, chính thư mục đó.Giá trị miền địa phương của Trung Quốc-zh_CN đưa ra lỗi trên Eclipse

Vấn đề chắc chắn là với tên thư mục, nếu tôi đổi tên thư mục thành values-nl ví dụ như lỗi xuất hiện.

Tên duy nhất mà Eclipse chấp nhận là values-zh-rCN biên dịch tốt nhưng miền địa phương thực sự không được tải (Thay vào đó, vi en mặc định được tải).

Trả lời

8

Nếu bạn đặt tên cho thư mục ví dụ values-zh, nó sẽ chỉ được tải khi tiếng Trung được chọn trong cài đặt ngôn ngữ hệ thống. Bạn nên biết về điều đó.

Giá trị zh-rCN là chính xác và mọi thứ sẽ hoạt động chính xác. Đọc thông báo của tôi ở trên.

+2

giá trị-zh hoạt động tốt, nhưng tôi cần phân biệt giữa tiếng Trung giản thể và tiếng Trung phồn thể. Tôi đã thử tải miền địa phương bằng tay, sử dụng Locale và getBaseContext(). GetResources(). UpdateConfiguration(). Nhưng vẫn còn, nếu các giá trị trong giá trị-zh-rCN chúng không được nạp. vì một số lý do họ bị bỏ qua. bất kỳ ý tưởng tại sao? – aviran

+0

Bạn đã đọc bài viết đó: http://stackoverflow.com/questions/2264874/changing-locale-within-the-app-itself? – TN888

+0

@aviran sử dụng zh_CN nếu bạn muốn tải nội dung của zh_rCN nếu bạn đặt ngôn ngữ theo cách thủ công. – steven0529

1

Miền địa phương chính xác là zh-rCNzh-rTW, vì vậy, sau đó bất kỳ phần mềm Android nào bạn sử dụng không được đặt chính xác giá trị ngôn ngữ.

Xem xét cài đặt -> Ngôn ngữ & Nhập để kiểm tra lại ngôn ngữ là tiếng Trung Quốc và nếu không nhìn vào thị trường cho ứng dụng có tên MoreLocales2, nó cho phép bạn sử dụng một số phần mềm của Samsung thay đổi từ làm việc.

+0

thậm chí không hoạt động trên trình mô phỏng ... – aviran

+3

Điều này không đúng. Bạn nên đặt bản dịch Trung Quốc (Phồn thể) thành các giá trị-zh để các ngôn ngữ khác với zh-TW vẫn sẽ nhận được bản dịch tiếng Trung Phồn thể. Nếu người dùng của bạn là Ma Cao (zh_MO) hoặc Hồng Kông (zh_HK) và bạn không bao gồm thư mục giá trị-zh, họ sẽ thấy văn bản tiếng Anh thay vì tiếng Trung Phồn thể. Đặt bản dịch tiếng Hoa Giản thể của bạn thành giá trị-zh-rCN vì tiếng Trung giản thể được sử dụng ở ít ngôn ngữ hơn. –

+0

Người dùng đã yêu cầu Đơn giản và Truyền thống mà tôi đã cung cấp. Không có đề cập trong OP về việc sử dụng 'giá trị-zh' hoặc bất cứ điều gì như thế để cảm ơn cho -1. –

9

Sử dụng mã sau làm việc cho tôi cho tiếng Trung Quốc truyền thống và đơn giản hóa.

if(selectedLanguage.equals("zh_CN")) 
    locale = Locale.SIMPLIFIED_CHINESE; 
else if(selectedLanguage.equals("zh_TW")) 
    locale = Locale.TRADITIONAL_CHINESE; 
else 
    locale = new Locale(selectedLanguage); 

Locale.setDefault(locale); 
Configuration config = new Configuration(); 
config.locale = locale; 
baseContext.getResources().updateConfiguration(config, baseContext.getResources().getDisplayMetrics()); 
+0

++++ @ Sunil Parmar cảm ơn !! –

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