2016-12-16 16 views
10

Tôi đang cố gắng bản địa hóa ứng dụng của mình bằng Swift 3 và Xcode 8.1.Làm thế nào để nhanh chóng bản địa hóa bảng phân cảnh khi đang bay?

Tôi đang cố gắng bản địa hóa ứng dụng bằng cả bảng phân cảnh (main.strings (tiếng Đức)) và lập trình sử dụng "NSLocalizedString".

tôi có thể khoanh vùng programatically sử dụng "NSLocalizedString" sử dụng đoạn mã sau

func localized(lang:String) ->String { 

     let path = Bundle.main.path(forResource: lang, ofType: "lproj") 
     let bundle = Bundle(path: path!) 

     return NSLocalizedString(self, tableName: nil, bundle: bundle!, value: "", comment: "") 
    } 

Nhưng tôi đang mắc kẹt với các tin cục bộ được định nghĩa trong kịch bản này. Tôi đã xác định chuỗi địa phương trong main.strings (tiếng Đức).

/* Class = “IBUILabel”; text = “Date :”; ObjectID = “0sh-CK-26C”; */ 
“0sh-CK-26C.text” = “Datum :”; 

Có cách nào để bản địa hóa bảng phân cảnh trong thời gian chạy không?

Trả lời

8

Tôi nghĩ, cách tốt nhất để bản địa hóa Bảng phân cảnh là- Trước tiên bạn phải hoàn thành công việc thiết kế bằng ngôn ngữ địa phương và sau đó bản địa hóa bảng phân cảnh của bạn bằng ngôn ngữ mong muốn. Sau đó xuất tệp .xliff và thay thế tất cả các văn bản bằng ngôn ngữ mong muốn. Và sau đó nhập lại tệp .xliff vào dự án của bạn. Và bạn đã hoàn thành ...!

+0

Cảm ơn bạn..Nhưng tôi nên thay đổi ngôn ngữ của bảng phân cảnh như thế nào (ví dụ: khi nhấp vào nút) – sss

+0

Nếu bạn muốn thực hiện nó bằng một lần nhấp, bạn chỉ có thể làm điều đó từ mã. Bạn không thể thay đổi bảng phân cảnh khi đang di chuyển. Nếu bạn muốn thay đổi bảng phân cảnh thì bạn phải khởi chạy lại ứng dụng của mình. –

+0

Ohh có nó .. bạn có thể chia sẻ cách thay đổi ngôn ngữ của bảng phân cảnh trên nút bấm ... xem xét lại trường hợp khởi chạy – sss

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