zoukankan      html  css  js  c++  java
  • Xamarin 不同平台代码分离的三种方法

    我们在使用Xamarin跨平台解决方案的过程中,其中超过80%的业务代码是可以共写在Shared Project中以供Android、IOS、UWP等平台共用。但由于各平台的一些API调用的方式不同,因此,需要将这些不同的业务代码区分开来写,那具体有哪些方法可以实现代码分离呢?Xamarin官网给出以下几种方法:

    方法一:Conditional Compilation   -- 选择性编译,用#if #elif 等在Shared Project将不同平台的代码分开

    if  __IOS__
        ........//这的代码只在IOS下编译 
    #endif               if  __ANDROID__
        ........//这的代码只在Android下编译 
    #endif                

    方法二:Class Mirroring,简单来说,就是在Shared Project 中定义接口(并非真正的Interface),然后在IOS和Droid的Projects中实现

    如在Shared Project中定义如下代码

    void Main(){
       Alert.Show()
     }

    在IOS 项目中实现如下

    internal class Alert()
    {
       public void Show()
      {
         ................//你自己的代码
       }
    }

    在Android 项目中实现如下

     internal class Alert()
    {
       public void Show()
      {
         ................//你自己的代码
       }
     }

    方法三:Partial Class And Method   --通过部分类来实现

    Shared Project中:

    partial class HelloWorld()
    {
        .............//共享的代码
    }

    IOS Project中:

    partial class HelloWorld()
    {
        .............//IOS项目中的实现代码
    }
  • 相关阅读:
    Python基础教程【读书笔记】
    Python基础教程【读书笔记】
    Python基础教程【读书笔记】
    Python基础教程【读书笔记】
    JS实现焦点图轮播效果
    JQuery+CSS3实现Ajax加载时loading效果
    JQuery实现锚点平滑滚动
    CSS3之嵌入Web字体
    HTML5本地存储
    impress.js初体验——前端装X利器
  • 原文地址:https://www.cnblogs.com/litj/p/5577834.html
Copyright © 2011-2022 走看看