天天看点

VS2015 Cross-Platform 多语言配置VS2015 Cross-Platform 多语言配置

VS2015 Cross-Platform 多语言配置

最近有个项目,要求iOS、Androd、WindowsPhone8、WindowsPhone8.1、WindowsPhone10、Windows10等全平台通用,而不是纯UWP的通用,其实UWP,只是跨平台的一部分。于是本人想到用C#的Cross-Platform中的“Blank App(Xmarin.Forms Portable)”模板来开发,效果很好,实现了一套代码,多平台部署的要求!同时也省去了多套人马写代码的麻烦,也提高后期维护的效率。经用户体验后,效果很好,现将多语言配置方面做个记录,供同行参考!

步骤如下:

一、创建项目模板,取名为App1,模板将创建6个项目,如图

VS2015 Cross-Platform 多语言配置VS2015 Cross-Platform 多语言配置

二、单击选择解决方案,找到“生成”菜单下的“配置管理器”,调整为如下图配置,只为编译速度,全部勾上又何仿?:

VS2015 Cross-Platform 多语言配置VS2015 Cross-Platform 多语言配置

三、安装MultilingualAppToolkit.msi最新版,找到“工具”菜单下的“扩展和更新”,选择左边的“联机”,在右上角的搜索框中输入“Multilingual,之后搜索到如图文件“Multilingual App Toolkit 4.0”,单击安装即可。

四、选中“App1(可移植的)”项目,右击添加文件夹“Resources”,再右击“Resources”文件夹,接着添加“Multilingual”文件夹,因为资源有好多种,语言只是其中之一,个人习惯吧!再右击“Multilingual”添加“新建项”,选择“Visual C#”中的“资源文件”,同时改名为“Resource.resx”,单击确定后如下图

VS2015 Cross-Platform 多语言配置VS2015 Cross-Platform 多语言配置

五、双击此文件,打开编辑框,同时输入几个内容,如图

VS2015 Cross-Platform 多语言配置VS2015 Cross-Platform 多语言配置

六、右击“App1(可移植的)”项目,

VS2015 Cross-Platform 多语言配置VS2015 Cross-Platform 多语言配置

选择”中文(简体),中国“,就是那个”zh-CN”的。当然了,也可以同时选择其它语言,一起翻译即可。

VS2015 Cross-Platform 多语言配置VS2015 Cross-Platform 多语言配置

七、App1项目中会多出两个内容,如图:

VS2015 Cross-Platform 多语言配置VS2015 Cross-Platform 多语言配置

再右击“App1(可移植的)”项目,选择”生成机器翻译“,当然了,你也可以自己去一个一个翻译,就要双击那个”App1.zh-CN.xlf“文件打开后即可编辑了,哈哈。

VS2015 Cross-Platform 多语言配置VS2015 Cross-Platform 多语言配置

八、在“App1(可移植的)”项目中,添加”Views”文件夹,同时在“Views”文件夹中添加视图文件,为方便,就不改名字了,你自己看着办吧,哈哈。

VS2015 Cross-Platform 多语言配置VS2015 Cross-Platform 多语言配置

九、添加相应的代码到XAML文件中

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:res="clr-namespace:App1.Resources.Multilingual;assembly=App1"
             x:Class="App1.Views.Test.Page1"
             Title="{x:Static res:Resource.AppName}">

  <StackLayout>
    <Label Text="{x:Static res:Resource.Profile}"
           VerticalOptions="Center"
           HorizontalOptions="Center" />
    <Label Text="{x:Static res:Resource.Settings}"
           VerticalOptions="Center"
           HorizontalOptions="Center" />
    <Button Text="{x:Static res:Resource.Ok}"
            BackgroundColor="Aqua"
            TextColor="Maroon"
            VerticalOptions="Center"
            HorizontalOptions="Center" />
  </StackLayout>

</ContentPage>
           
VS2015 Cross-Platform 多语言配置VS2015 Cross-Platform 多语言配置

十、调整启动顺序为”Page1“,

VS2015 Cross-Platform 多语言配置VS2015 Cross-Platform 多语言配置

重新编译,之后运行,将看到如此界面:

VS2015 Cross-Platform 多语言配置VS2015 Cross-Platform 多语言配置

十一、调整系统语言:添加英语,并调整为默认

VS2015 Cross-Platform 多语言配置VS2015 Cross-Platform 多语言配置
VS2015 Cross-Platform 多语言配置VS2015 Cross-Platform 多语言配置

再次运行程序

VS2015 Cross-Platform 多语言配置VS2015 Cross-Platform 多语言配置

还可以添加,其它语言的!

本人尝试了几种,均为很好效果!

至此,实现了多语言的切换。