我們知道在UWP里面有Resources文件xxx.resx,在Android里面有String.Xml文件等。那跨平台如何統一這些類別不一的資源文件以及Xaml設計文件如何綁定這些資源?應用支持多國語言時如何設置資源文件?還好Xamarin.Froms已經實現了我們的需求,不過語言設置還是得發一番功夫。
今天就最常用的一種(StaticExtension)進行使用說明,語言設置后續再說。先准備一個資源文件。(由於為跨平台使用記得設置為Public屬性)
- 后台讀取Resources文件方法
這種方法和以前做UWP開發是一樣的沒區別。
1,添加Resources.Designer.cs所在命名空間的引用
using AppResources;
2,讀取Resources文件的Key值
AccountLabel = Resources.Account;
- 前台Xaml綁定Resources方法
這種方法與UWP開發有一定區別。特別是com:Resources.Account的用法比較特殊。
1,添加命名空間與Assembly說明
xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:com="clr-namespace:AppResources;assembly=AppResources"
2,綁定設置
<Label Text="{x:Static com:Resources.Account}" />
以上兩種方法就是簡單的資源文件訪問,具體在多語言情況如何設置下節待續。