转载——为Xamarin更好的开发而改写的库
本人现今一直奋战在Xamarin.Android,可能有人会疑惑Xamarin本身就是跨平台的,为什么不能直接跨IOS和Android,这个当然是最后的目标,只是现今你连Android都不能拿出符合商业的项目谈何通吃?
而本人在实际开发中遇到了很多非常实际的需求,仅仅依靠Xamarin提供的库是完成完成的,开始作者开始bind各种库,但是从事过的人都知道这个 bind就是一个揪心的过程,可能要面对几百个错误,然后去修正。如果是应付一次性开发的项目还好,但是面对从事运营的项目来说,这样无非是给自己埋下了 一个定时***。因为一旦这样做,以后你需要修改的话,就需要修改java的源码,然后重新bind。所以后来作者就开始直接将java的库改写成c#的版 本,这样在开发的时候直接引用项目,需要修改了直接修改,就避免了之前繁琐的过程,当然这个路程还很长,所以作者给出一些已经完成库,希望更多的人参与进 来,能够完善这些库,甚至将这些库开发为可以跨平台的库。
1.VolleyCSharp
相信很多从事过java开发的人一定熟知这个库,在本人不断的改写中也感受到了这个库的强大之处,当然这个库还没有完全的实现原版的所有功能,主要是没有提供图片的请求,其他的请求本人已经完成了。Github
2.AppMsg
一个可以替代Toast的漂亮提示库,具体大家可以看效果图Github:

3.PullToRefresharp
是由一个大神开发下拉刷新,但是其中的列表不提供类似QQ的那种滑动菜单的功能,所以笔者将SwipeMenuListView这个开源的列表滑动菜单与这个下拉刷新合并了起来,关于下拉刷新的效果图我就不贴出了,直接贴出SwipeMenuListView的效果图Github:

4. SlideDatetimePickerCSharp
相信大家也对付时间输入的时候特别揪心,作者也遇到过这个需求,采用的是弹窗的方式来让用户选择,但是这个方式会导致弹出的窗口很长,如果是小屏幕 的手机下用户操作性特别不好,所以作者寻觅很久,找到了一个java下非常好的时间选择库,花了一整天的时间完成,并通过了云测试下面给出示例图Github:

5. MaterialLoadingProgressbarCSharp
不用多说还是找到了一个很好的java下的库,然后改写的。当然这个库是作者今天上午才完成最后编码和本地测试的,现在已经开始云测试了,先给出示例图Github:

转载自:http://www.cnblogs.com/yaozhenfa/p/4446821.html
转载——为Xamarin更好的开发而改写的库的更多相关文章
- 为Xamarin更好的开发而改写的库
欢迎大家加入以下开源社区 Xamarin-Cn:https://github.com/Xamarin-Cn Mvvmcross-Cn:https://github.com/Mvvmcross-Cn ...
- C#-Xamarin的Android项目开发(二)——控件应用
相信我,这不是一篇吐槽文章.... 基础控件 Android的控件和控件样式非常特别,它是一种内联特别高的设计模式,换句话说,它是非常烂的设计.... 但在这种特别的关系里还是有一定的规律的,下面我们 ...
- 【Xamarin挖墙脚系列:使用Xamarin进行Hybrid应用开发】
原文:[Xamarin挖墙脚系列:使用Xamarin进行Hybrid应用开发] 官方地址:https://developer.xamarin.com/guides/cross-platform/adv ...
- C#-Xamarin的Android项目开发(三)——发布、部署、打包
前言 部署,通常的情况下,它其实也是项目开发的一个难点. 为什么这么说呢?因为,它不是代码开发,所以很多开发者本能的拒绝学习它. 并且一个项目配置好一次以后,部署的步骤和部署的人通常很固定,所以大部分 ...
- 取代 Mybatis Generator,这款代码生成神器配置更简单,开发效率更高!
作为一名 Java 后端开发,日常工作中免不了要生成数据库表对应的持久化对象 PO,操作数据库的接口 DAO,以及 CRUD 的 XML,也就是 mapper. Mybatis Generator 是 ...
- 可能对Flutter应用程序开发有用的代码/库/专有技术列表
当我开始使用Flutter实施该应用程序时,我开始担心“如何最好地编写?”以及“如何使其更好地放置?”. 在这种情况下,您将需要参考GitHub上发布的代码和应用程序. 因此,我收集了似乎对Flu ...
- STC8H开发(四): FwLib_STC8 封装库的介绍和注意事项
目录 STC8H开发(一): 在Keil5中配置和使用FwLib_STC8封装库(图文详解) STC8H开发(二): 在Linux VSCode中配置和使用FwLib_STC8封装库(图文详解) ST ...
- iOS开发拓展篇—静态库
iOS开发拓展篇—静态库 一.简单介绍 1.什么是库? 库是程序代码的集合,是共享程序代码的一种方式 2.库的分类 根据源代码的公开情况,库可以分为2种类型 (1)开源库 公开源代码,能看到具体实现 ...
- App.js – 用于移动 Web App 开发的 JS 界面库
App.js 是一个轻量级的 JavaScript UI 库,用于创建像本地应用程序的移动 Web 应用而不牺牲性能和体验.它是跨平台的,特定的UI设计,配置类似原生的过渡效果.App.js 的目的是 ...
随机推荐
- 【02】webstorm配置babel转换器+截图(by魔芋)
[02]webstorm配置babel转换器+截图(by魔芋) [02]魔芋的安装过程 01,配置babel. 02,用webstorm.注意webstorm的版本号. 03,使用 ...
- CC3200模块的内存地址划分和bootloader,启动流程(二)
1. 首先启动内部ROM固化的BOOT,然后这个ROM启动需要使用内存空间0X2000 0000 --- 0X2000 4000共16K的空间.一级BOOT的作用是串口升级和驱动库. 2. 然后是二级 ...
- 《算法》C++代码 Dijkstra
单源最短路,复杂度是O(N²),堆优化的是O(NlogN).基本思想是贪心,每次都加入一个当前最近的点,可以证明每次当时最近的点就是当前最短的路径.因此,所有点都加入之后,起点到所有点的最短路径就都求 ...
- Caliburn Micro Binding KeyDown Event
<TextBox x:Name="MyTextBox" TextAlignment="Left" FontSize="10" Widt ...
- Percona-Tookit工具包之pt-slave-restart
Preface Sometimes,the threads(especially the SQL_Thread) will be terminated by accident.The ...
- PHP面向对象练习
练习内容:随机生成一个字符串 代码: <?phpclass randstring{ private $length; private $type; private $one = array(0, ...
- group_load,weight_load,group_capacity, group_weight大致都是啥数值
[ 113.180820] sgs->group_load:2039,sum_nr_running:2,sum_weighted_load:2039,sgs->group_capacity ...
- javascript replace 替换全部字符
$("#pageNote").html($("#note3").val().replace(/ /g, "").replace(/<b ...
- 染色 color
染色 color 题目描述 有一块矩阵平板,分成n*m个格子,一开始全是白色.在这上面进行k次染色,每次染色按照如下步骤:1. 随机选择一个格子,称为A.2. 随机选择一个格子,称为B.3. 将由A ...
- typedef函数用法
转载自:http://www.cnblogs.com/ggjucheng/archive/2011/12/27/2303238.html 引言 typedef 声明,简称 typedef,为现有类型创 ...