簡體   English   中英

在iOS上以編程方式本地化info.plist

[英]programmatically localize info.plist on iOS

我在iOS上遇到特定翻譯問題。 我當前正在使用的應用程序將從Web服務獲取其顯示的所有文本。 我已經能夠在任何地方實現這一點,只有一個例外:

我尚未找到一種方法來以編程方式更改info.plist中的文本,這些文本已在系統無法控制的代碼中被系統使用。 我需要處理的是“隱私-相機使用說明”。 到目前為止,我發現的所有文檔都告訴我要為info.plist添加本地化的文本版本-但在這種情況下,這對我無濟於事,因為不同的客戶可能會為同一語言指定不同的文本,而我有時甚至不知道文字使用哪種語言,因此我不能僅依靠應用程序中的靜態數據來選擇正確的文字版本。

有什么方法可以通過編程方式設置這樣的文本,或者如果無法捕獲顯示它的警報並將其替換為我自己的文本呢?

不,不可能,我們不能更改Info.plist運行時。 但是,如果我在那里代替您,我會做一件事作為解決方案。 使用api中指定的文本顯示自定義的alertview。 它將詢問“我們將使用您的相機”。 如果用戶說“確定”,則使用靜態本地化字符串顯示系統的警報視圖以獲取許可。 它需要2次互動,但可以徹底指導用戶。

您可以本地化info.plist文件本身。 從項目中,轉到您的info.plist文件,然后打開“實用工具”選項卡,然后單擊“本地化”。 對於不同的本地化版本,請在指定鍵上使用不同的字符串。

注意

我自己還沒有嘗試過,只是檢查它是否可以本地化。 還有另一件事,通過這種方式,應用程序將使用設備的本地化(您不能使用庫來混淆應用程序使用的String表)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM