1.下载最新的Residemenu安卓代码。用intellig打开,重新编译一下。

2.需要将其中的Residemenu,用gradle编译生成*.aar文件格式。

2.1 下载gradle,配置环境变量,包括java、androrid_home、gradle环境变量。

GRADLE_HOME   C:\gradle-2.7-bin\gradle-2.7

ANDROID_HOME C:\Users\Administrator\AppData\Local\Android\android-sdk

Path  %GRADLE_HOME%\bin;%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools;

2.2 在Residemenu项目文件中有,也有了build.gradle文件。在命令行中,转到Residemenu目录下,执行gradle build命令,就可以在ResideMenu\build\outputs\aar下,产生两个对应的aar文件。

3.将aar文件放到xamarin jar binding项目中,并且要设置生成操作为LibraryProjectZip。其中,Residemenu应用了nineoldandroids-library-2.4.0.jar,所以在binding项目中,会有一些错误。需要在Metadata.xml中,将错误排除。以后在binding安卓项目时,对错误的都先可以采用排除的方式,否则要进行调试修改很费时间。

修改metadata.xml,将错误的都先移除掉

<metadata>

<remove-node path="/api/package[@name='com.nineoldandroids.animation']/class[@name='AnimatorSet']/method[@name='setDuration' and count(parameter)=1 and parameter[1][@type='long']]" />

<remove-node path="/api/package[@name='com.nineoldandroids.animation']/class[@name='ValueAnimator']/method[@name='setDuration' and count(parameter)=1 and parameter[1][@type='long']]" />   <remove-node path="/api/package[@name='com.nineoldandroids.animation']/class[@name='AnimatorSet']" />   <remove-node path="/api/package[@name='com.nineoldandroids.animation']/class[@name='ValueAnimator']" />

<remove-node path="/api/package[@name='com.nineoldandroids.animation']/class[@name='PropertyValuesHolder.FloatPropertyValuesHolder']/constructor[@name='PropertyValuesHolder.FloatPropertyValuesHolder' and count(parameter)=2 and parameter[1][@type='java.lang.String'] and parameter[2][@type='com.nineoldandroids.animation.FloatKeyframeSet']]"/>

<remove-node  path="/api/package[@name='com.nineoldandroids.animation']/class[@name='PropertyValuesHolder.IntPropertyValuesHolder']/constructor[@name='PropertyValuesHolder.IntPropertyValuesHolder' and count(parameter)=2 and parameter[1][@type='java.lang.String'] and parameter[2][@type='com.nineoldandroids.animation.IntKeyframeSet']]" />   <remove-node path="/api/package[@name='com.nineoldandroids.animation']/class[@name='PropertyValuesHolder.IntPropertyValuesHolder']/constructor[@name='PropertyValuesHolder.IntPropertyValuesHolder' and count(parameter)=2 and parameter[1][@type='com.nineoldandroids.util.Property'] and parameter[2][@type='com.nineoldandroids.animation.IntKeyframeSet']]" />

<remove-node path="/api/package[@name='com.nineoldandroids.animation']/class[@name='PropertyValuesHolder.FloatPropertyValuesHolder']/constructor[@name='PropertyValuesHolder.FloatPropertyValuesHolder' and count(parameter)=2 and parameter[1][@type='com.nineoldandroids.util.Property'] and parameter[2][@type='com.nineoldandroids.animation.FloatKeyframeSet']]" />

</metadata>

这样就可以编译成功了。

4.在Xamarin项目中就可以引用binding后的dll使用了。

Xamarin改写安卓Residemenu控件的更多相关文章

  1. 很不错的安卓FadingActionBar控件源码

    这个我刚刚从一个github下载过来的,自己测试一下运行了,感觉还不错的,安卓FadingActionBar控件源码,现在就给大家分享一下,源码我已经上传到源码天堂那里了,想下载的朋友可以去那里下载吧 ...

  2. 安卓控件 仪表盘控件 柱状图控件 曲线控件 xamarin.android 分类器 瓶子控件 报警控件 水箱控件 进度条控件等

    本篇博客主要介绍一个控件库,HslControls.dll 的界面,这个控件库支持winform,winform的参考另一篇文章:https://www.cnblogs.com/dathlin/p/1 ...

  3. Xamarin.forms 自定义dropdownview控件

    一 基本说明 想用xamarin做个像美团这样的下拉列表进行条件选择的功能,但是但是找了半天好像没有现成的,也没有其他类似的控件可以走走捷径,再则也没有找到popwindow之类的东东,这里只好使用s ...

  4. Xamarin.forms 自定义tabview控件

    一 问题描述 forms本身ui代码是翻译为平台原生代码,forms按照xaml技术进行对android和ios两种ui模型进行公共抽象出了几种page和view,在空杯博客已经有详细介绍 http: ...

  5. Xamarin Forms 进度条控件

    本文翻译:http://xamlnative.com/2016/04/14/xamarin-forms-a-simple-circular-progress-control/ 里面都是胡说的,如果看不 ...

  6. python +uiautomator 安卓UI控件操作

    一.搭建环境 准备:win7.JDK.androidSDK(adt-bundle-windows-x86_64-20140702\sdk).Appium.安卓模拟器(真机也可以),可以到这个地址下载h ...

  7. 安卓Android控件ListView获取item中EditText值

    可以明确,现在没有直接方法可以获得ListView中每一行EditText的值. 解决方案:重写BaseAdapter,然后自行获取ListView中每行输入的EditText值. 大概算法:重写Ba ...

  8. Xamarin.android 重写axml控件

    https://www.cnblogs.com/lonelyxmas/p/5632694.html <Laco: 用来用引指定的控件            android:layout_widt ...

  9. xamarin android——数据绑定到控件(二)

    本示例为通过媒体内容提供器获取本机中的图片显示在Gallery中. 活动中简单的初始化代码 private void InitGallery() { Gallery gallery = FindVie ...

随机推荐

  1. SQL Server 存储过程分页

    每每面试,总会有公司问到分页.在下不才,在这里写几种分页,望路过的各位大神尽情拍砖. 先从创建数据库说起.源码如下 一.创建数据库 /********************************* ...

  2. VsCode使用技巧

    VsCode版本1.7.2 1. node智能提示:vscode1.7之前的版本智能提示是采用jsconfig.json方式,在右下角会有小灯泡,点击创建jsconfig.json.1.7之后使用Ty ...

  3. [转]mysql 的日志的启动与查看

    mysql有以下几种日志:错误日志:  -log-err查询日志:  -log慢查询日志: -log-slow-queries更新日志:    -log-update二进制日志:-log-bin 日志 ...

  4. 【USACO 3.3.2】商品购物

    [描述] 在商店中,每一种商品都有一个价格(用整数表示).例如,一朵花的价格是 2 zorkmids (z),而一个花瓶的价格是 5z .为了吸引更多的顾客,商店举行了促销活动. 促销活动把一个或多个 ...

  5. C++函数覆盖的思考

    最近碰到一些问题,一开始很难调试和解决,最后发现原来是在基类函数的模板方法中对子类需要重写的函数没有使用virtual,如下 class Base { public: void say(){test( ...

  6. js 求两个日期之间相差天数

    //求两个日期之间的相差天数 function daysBetween(DateOne, DateTwo) { var OneMonth = DateOne.substring(5, DateOne. ...

  7. JQuery 左右拖动插件

    js文件:http://hokaccha.github.io/js-flipsnap/js/flipsnap.js 官网: http://hokaccha.github.io/js-flipsnap/

  8. spring的beans.xml的配置

    <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.sp ...

  9. Delphi笔记(GL_Scene安装及简单使用)

    前一段时间,需要弄一个四轴的监控平台,看了匿名的上位机后,十分感兴趣.于是我也想自己也弄一个上位机来玩玩,在将串口通讯调好了以后,就开始好奇那个3D模型是怎么弄的.在网上面查找了很多资料,由于我用的是 ...

  10. iOS开发网络篇—JSON数据的解析

    iOS开发网络篇—JSON数据的解析 iOS开发网络篇—JSON介绍 一.什么是JSON JSON是一种轻量级的数据格式,一般用于数据交互 服务器返回给客户端的数据,一般都是JSON格式或者XML格式 ...