开源项目

Android UI框架之 XUI TextView、Button、EditText、ImageView、Spinner、Picker、Dialog、PopupWindow、ProgressBar、LoadingView、StateLayout、FlowLayout、Switch、Actionbar、TabBar、Banner、GuideView、BadgeView、MarqueeView、WebView、SearchView等一系列的组件和丰富多彩的样式主题。需要定义各种资源文件。具体的组件API使用挺多的。市面上好用的三方UI也不少。 阅读详情


一、代码库


1、from  代码家
整理比较好的源码连接

***************************************************************************************************************************************************************************

感谢 “代码家”整理

一、兼容类库

  1. ActionBarSherlock : Action Bar是Android 3.0后才开始支持的,ActionBarSherlock是让Action Bar功能支持2.X后的所有平台,而且他会自动的判断是调用原生Action Bar还是使用扩展ActionBar。在我的小熊词典里有用到这个库,而且很多非常知名的App也在使用这个库。GitHub Official ActionBar科普
  2. Android-ViewPagerIndicator : 这是与ViewPager兼容的一个分页指示器库。分页指示器(Friends 和 Suggested就是分页,而下面蓝色的小条就是指示器,ViewPagerIndicator支持多种样式的指示器。):GitHub
  3. NineOldAndroids  : NineOldAndroids 将 Honeycomb (Android 3.0) 的动画 API 扩展到了Android 1.0以上。这个库的作者即是ActionBarSherlock的作者,也是Android-ViewPagerIndicator的作者,Jake Wharton, 非常厉害的一个人,Github关注量超过1.6K,如果你也做Android开发或者即将开始学习Android开发,一定要去Follow他,而且留意一下他每次的star和follow信息,经常会有很惊奇的发现。Jake Wharton
  4. HoloEverywhere:在Android 4.0时,Google引入了新的主题风格—Holo,多数厂商都想统一界面设计UI,因此更加具有兼容性的Holo主题库HoloEveryWhere便成为很多开发者的选择。在Android的官方Blog中也对HoloEveryWhere这个库有所推荐,点此查看官方博客对HoloEveryWhere的介绍。HoloEveryWhereGithub
  5. Android-Datepicker: 兼容Android 4.0的datepicker至Android 2.2。 GitHub

二、扩展功能库

  1. SlidingMenu : SlidingMenu 能非常容易的让开发者实现程序的抽屉效果,所谓的抽屉效果如下图所示,通常被用作呼出菜单。而且SlidingMenu能很方便的与ActionBarSherlock融合,在官方GitHub上有关于如何融合的说明。 GitHub  
    滑动效果演示
  2. AppMsg : 优雅的弹出类似Toast的消息提示,支持3种状态Alert,Confirm以及Info。GitHub
  3. Drag-Sort-ListView : 很多人都用过在一个ListView中通过拖拽对已有的数据进行排序操作。Drag-Sort-Listview就是实现这一功能的开源库。GitHub
  4. Android-Flip : 轻松实现类似FlipBoard的翻页功能。 GitHub
  5. Android-PullToRefresh : Android下拉刷新组件。 GitHub    此外,该作者还有另外一个实用度和关注量极高的项目–另一种Android ActionBar的实现:GitHub
  6. picasso:  程序中经常面临加载网络图片的情况,成熟做法:异步下载->缓存->显示,Picasso一行代码就可这三步轻松完成。GitHub GitHubPage ,GitHub上图片异步加载缓存类库很多,你也可尝试使用Android-Universal-Image-Loader 或者 LazyList 后面将介绍到的afinal(国人项目)也具有此功能。

  三、工具类库:

  首先,就我个人开发经验,总结一下平常用到的一些最常用的功能:

  1. 下载,比如图片,文件。
  2. 将下载的文件进行解压。
  3. 请求服务器,比如说上传登陆信息,更新某些数据,又或者上传头像文件。
  4. 从文件系统中选择要操作的文件。
  5. 有时候也需要爬取某些网页数据。
  6. 存储一些配置信息
  7. 再有一个特殊需求就是关乎Android程序UI设计,图标是个很麻烦的问题。每次都难以找到合适的Android 设计UI。

随后,我将很有针对性的推荐一些功能库,来简化上面的问题。

  1. afinal: afinal是一个很方便的工具库。GitHub  作者博客(注:国人项目哟)
    • 一行代码就可以对数据库进行增删改查。 
    • 完全注解方式就可以进行UI绑定和事件绑定。无需findViewById和setClickListener等。
    • 轻松实现Android上传文件,POST数据,下载文件(支持断点续传,随时停止下载任务 或者 开始任务)。
    • 一行代码加载网络图片。
  2. android-async-http: Android下的异步HTTP库。GitHub   文档  PS:作者的GitHub值得关注。
    • 发送异步http请求,并且可在回调函数中处理返回响应Response。
    • http请求在thread线程,不会阻塞UI线程。
    • 请求使用线程池(ThreadPool)实现,优化了并发的资源使用。
    • 支持Multipart 文件上传。
    • 如果Request请求失败,会自动请求。
    • 支持Json解码。
    • 支持存储Cookies到Preference中。
    • 支持gzip处理Request以及Response。
    • 整个库只有19KB。
  3. async-http-client: Android下的异步 Http 和 WebSocket 库。  GitHub
    • 支持代理设置
    • 支持分片儿处理请求返回内容
    • 支持WebSocket
  4. zt-zip: 压缩和解压库。 GitHub
    • 压缩和解压
    • 单独操作文件压缩和解压。
    • 替换zip文件中的某个文件
  5. aFileChooser:文件选择器,用于选择需要操作的文件 GitHub
  6. jsoup: HTML解析,并且能很好理解DOM,CSS,以及JQuery。GitHub 官方  PS:这是java库。做网页爬虫(Crawler,Robot)必备。
  7. toml:这是个跨语言的配置信息存取方案。GitHub
  8. Androiton-Action-Bar-Icons:一个针对Android 优化过的ICON图标集。 GitHub Demo

四、图标资源:

五、一些手册

七、一些视频

  • Android Studio 的新特性官方讲解视频,我在官方技术博客上下载下来,上传到网盘,希望对大家有帮助。下载地址

八、高价值链接

  • Android官方博客 提供一些跟Android相关的即时咨询。(需要梯子)
  • Android官方技术博客 主要提供一些新工具(如Android Studio),新技术(如每次更新带来新特性)的演示和讲解。(需要梯子)
  • AndroidViews Android View组件收集站点。
************************************************************************************************************************************************************************



二、(from os china) http://www.oschina.net/project

1、Android的快速开发框架 afinal



Afinal 是一个Android的 orm 和 ioc 框架。而且封装了android中的httpClient,使其更加简单易用。使用finalBitmap,无需考虑bitmap在android中加载的时候oom的问题和快速滑动的时候图片加载位置错位等问题。

Afinal的宗旨是简洁,快速。约定大于配置的方式。尽量一行代码完成所有事情。

2、 OSCHINA Android 客户端





Android Annotations 是一个开源的框架,用于加速 Android 应用的开发,可以让你把重点放在功能的实现上,简化了代码,提升了可维护性。
TouchVG 是一个通用的轻量级二维矢量图形框架,可用于开发交互式矢量绘图软件,适用于 iPad/iPhone、Android 等多点触摸设备,也适用于鼠标交互的桌面应用。



GalHttprequest 是一个android平台上一个轻量级的http网络请求及缓存框架。

当前GalHttpRequest支持以下功能:

  • 同步请求Stirng、InputStream、Bitmap;
  • 异步请求String、InputStream、Bitmap;支持回调接口;
  • 支持异步下载文件,提供监听进度回调接口;
  • 支持缓存参数设置;
  • 支持多线程及队列请求;
  • 自动适配移动、联通、电信wap代理;
  • 支持快捷post请求;

ThinkAndroid简介

ThinkAndroid是一个免费的开源的、简易的、遵循Apache2开源协议发布的Android开发框架,其开发宗旨是简单、快速的进行Android应用程序的开发,包含Android mvc、简易sqlite orm、ioc模块、封装Android httpclitent的http模块,具有快速构建文件缓存功能,无需考虑缓存文件的格式,都可以非常轻松的实现缓存,它还基于文件缓存模块实现了图片缓存功能,在android中加载的图片的时候,对oom的问题,和对加载图片错位的问题都轻易解决。他还包括了一个手机开发中经常应用的实用工具类,如日志管理,配置文件管理,android下载器模块,网络切换检测等等工具。

http://www.oschina.net/p/thinkandroid

https://github.com/white-cat/ThinkAndroid



Android Wifi Tether 是 Android 用来实现网络共享的软件


你可能会熟悉 LiveAndroid 项目,不过该项目自从推出 0.3 版本后 似乎就没什么动静了。相比 LiveAndroid “To provide a LiveCD(and LiveUSB) for common X86 platforms” 的目标,Android-x86 项目目标更为远大:“Port Android open source project to x86 platform”。

目前 Android X86 项目实现的功能有:

  • Kernel 2.6.29 (包含 KMS)
  • 声音
  • 摄像头支持
  • 触摸屏
  • 鼠标(滚轮及指针)
  • 休眠及唤醒
  • 包含 Busybox 的 Debug 模式
  • 图形 WiFi 配置
  • 驱动固件热拔插
  • 外置 USB 键盘支持
  • 模块驱动的自动检测

最近该项目推出了 Android 1.6 版本的 LiveCD(with Installer) 和 LiveUSB

http://www.android-x86.org/


实现了类似于迷尚android和蘑菇街android的瀑布流布局



WindowsAndroid 目前是基于 Android 4.03 开发,团队计划在不久后引入更多的Android版本供用户使用。它能提供完整的 Android4.0体验,其中还包含有原生的GApps(Google基础服务包),你可以直接通过浏览器浏览网页,收发邮件等……

开发者自称在操作系统、虚拟化和图形技术方面富有经验,在该项目上已经工作了数年。WindowsAndroid不是模拟器,提供了完整的Android功能,可以运行所有的 Andorid 应用,包括 3D 游戏。


android-viewflow 是 Android 平台上一个视图切换的效果库。

ViewFlow 相当于 Android UI 部件提供水平滚动的 ViewGroup,使用 Adapter 进行条目绑定。

http://www.oschina.net/p/android-viewflow

该项目为 Android 应用提供一个向下滑动即刷新列表的功能
Screenshot



Haxe是一门新兴的开源编程语言,开发者称:“相比其他语言(Java的平台是 JVM,C#的平台是.Net,ActionScript的平台是Flash Player等等),Haxe才是真正的多平台语言。不管是开发原生iOS、Android应用,还是网页;不论是应用于服务器还是个人桌面,Haxe都 可以胜任。”



最近台湾也有一个Android开发者研发了一款类似的一键root程序Universal Androot,同样操作和Easy Root一样简单,而且用户也可以再取得root权限后使用UnRoot功能来还原之前的系统状态,这意味着如果你哪天玩腻了rooted的手机想回到过 去,或者官方Android系统升级推出时也想凑凑热闹可以使用UnRoot功能。





Android Coverflow 是 Android 的 cover flow 窗口部件的简单实现。



Android Bootstrap 包含一个完整实现:Fragments, Fragment Pager, Account Manager, android-maven-plugin, Dagger, ActionBarSherlock 4, ViewPagerIndicator, http-request, GSON, Robotium for integration testing, API Consumption with an API on Parse.com and much more.
code:

21、ipcamera-for-android

一款将Android手机变成IP Camera的软件,在同一个网路,你可以在任意的浏览器查看手机监控视频。

22、 PhotoView

PhotoView 是一款扩展自Android ImageView ,支持通过单点/多点触摸来进行图片缩放的智能控件。

特性:

  1. 支持单点/多点触摸,即时缩放图片;
  2. 支持平滑滚动;
  3. 在滑动父控件下能够运行良好;(例如:ViewPager


openHAB全称为open Home Automation Bus,即开放式家庭自动化总线,该项目旨在为家庭自动化构建提供一个通用的集成平台。

openHAB是一个纯Java打造的开源项目,完全基于OSGi(Open Service Gateway Initiative),并使用Jetty作为web服务器。Jetty和Equinox OSGi运行时一起构成了openHAB的核心基础。



Android酷炫实用的开源框架(UI框架) 网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。同时我还搜集整理2020年字节跳动,以及腾讯,阿里,华为,小米等公司的面试题,把面试的要求和技术点梳理成一份大而全的“ Android架构师”面试 Xmind(实际上比预期多花了不少精力),包含。网上学习 Android的资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。提供一个简单可以自定义的下拉刷新实现, 阅读详情

相关推荐

Android 常用的 UI 控件 和 对应的方法详细总结

设计和代码切换,一般情况下,我们 UI 布局都是先拖再细调整,也就是先用设计默认拖出一个大概的布局,然后用代码来微调 一、常见的布局 1.LinearLayout 线性布局 LinearLayout 几个重要的 XML 属性 xml 属性 说明 android:id 为组件设置一个资源 id,然后在 Java 中可以通过findViewById(id)找到该组件 android:background 为组件设置一个背景图片或者背景色 android:layout_...

mike_jungle的博客 1142

各种Android ui 开源框架

在当下这个信息共享的时代,很多资源都可以在网络上找到,只取决于你愿不愿意找或是找的方法对不对了很多朋友不是没有资料,大多都是有几十上百个G,但是杂乱无章,不知道怎么看从哪看起,甚至是看后就忘如果大家觉得自己在网上找的资料非常杂乱、不成体系的话,我也分享一套给大家,比较系统,我平常自己也会经常研读。

wang688699的博客 3661

Python开源项目总结

出品 | Python大本营 在这篇文章中,营长为大家新鲜出炉了一份 Python 开源项目 Top100 清单!这些项目都是营长每月通过收集 Mybridge 的数据整理而来的,是不是很棒!(我要在留言区看到你们夸我)下面,我们就来看看这份列表里都有哪些好项目~ 开源项目系列(一)Python 开源项目 Top 10 精选(平均star为1128) 本次开源项目包含Python新利器Pip...

Python大本营的博客 1万+

太全了,一线互联网大厂都在用的Android UI框架完全解析,拿去吧你

在学习Android过程中,会使用到很多UI框架,而使用时对框架的实现方式应有一定的了解,这个过程最好的方式就是阅读源码,学习大厂的使用方法。但UI框架很多,不时会有新的出现,而且对一些通用框架来说,一般代码量非常庞大,所以正确的学习姿势很重要。 今天要给大家分享一份互联网大厂流出的《Android UI开源框架进阶解密》,总结了 Android 项目中值得推荐的UI优秀开源项目,将收集到的开源项目分类汇总到表格中,并对开源项目一一进行详细解析。 内容涵盖Loading、图表、菜单、日历、图片、文本、弹窗、

Android23333的博客 4382

开源项目的认识理解

当然,参与开源项目应遵循一定的原则和规范,比如尊重知识产权,确保代码质量和安全性,以及维护社区的和谐氛围。对于企业和开发者来说,合理利用开源项目,不仅能够推动技术的发展,还能够促进自身能力的提升。- 开源项目的成功将越来越依赖于社区的建设和维护,社区的健康和活跃度将成为项目成功的关键。:积极参与开源项目,尤其是贡献高质量代码的开发者,可以建立良好的个人品牌,提高在行业内的知名度。:通过参与开源项目,开发者可以学习到最新的技术趋势,实践编程技能,并从中积累宝贵的项目经验。

2302_79376097的博客 2万+

GitHub开源项目实战指南

GitHub 是开源项目的重要平台,无论是参与开源项目还是创建自己的项目,都需要掌握一些实战技巧。以下是从。

2302_81112251的博客 2251

史上最全的开源项目创作指南

前言 开源,是这个时代的主旋律。作为一名Android开发工程师,我有理由相信我们是开源的最大受益者,因为那个养活我们的Android其本身就是Google的开源项目。在这样一个开源的时代,就连之前那个最排斥开源的"微软"也不得不积极拥抱开源,大手笔收购github以表自己的开源决心。 前段时间我在逛github的时候,偶然间发现,我的github已经拥有12个star过百的开源项目,2个star过千的项目。回首一想,原来我做开源项目已经快3年了,想想这一路走下来真的非常不易。 深夜和周末是我做开源项

xuexiangjys的博客 5793

聊聊如何学习开源项目

亲爱的程序员朋友,当你不知道选择哪一个开源项目开始学习时,希望你立足当下,当前技术团队使用的开源组件,正是你学习的方向。工作几年的程序员同学,有了一定的项目经验,对于编程也有了自己的理解,但他们偶尔也会感到困惑,不知道接下来该如何提升自己。 在笔者看来:"这个阶段的程序员最需要的是提升自身编程能力和视野高度,而学习开源项目是最有效的方法之一"。 这篇文章,笔者聊聊自己的学习开源项目的心得,希望对你有所帮助。

LoveSummer 3万+

分析开源项目

手把手教你分析开源项目 不知道代码怎么来的? 代码跑不起来? 项目对自己有帮助,不会模块化分析? 任何一个开源项目,都可以让自己得到提升! 这里以 EL-ADMIN 为例https://el-admin.vip/ 1、观察开源项目 后端代码: 前端代码: 2、开源项目下载 可使用zip下载,或者Git 观察: 用了哪些技术(springboot,vue,redis,) 是否有数据库(mysql) 你的环境是否匹配(Java,Maven,npm,nodejs,) 通过了,然后再想办法运行 3、跑

Frank---7的博客 9万+

关于如何同步更新开源项目

关于如何同步更新开源项目文档描述将开源项目拉取到自己的gitee仓库一.fork到自己仓库二.将项目导入到idea中后提交到gitee中如何同步更新开源项目不是同源的怎么更新代码end结束 文档描述 开发学习过程中,经常会将开源项目fork或者创建副本到自己的仓库中,并在自己仓库中根据需要做一系列修改,但是这时候原开源项目如果又有了新的更新内容,那么这时候就会碰到一个问题,我如何去更新开源项目的更新内容呢,下面本文将为你解答这个问题。 本文以IDEA中操作为例,实际使用git命令行也是一样的。 项目以

qq_31360283的博客 1万+

如何从0开始参与一个开源项目

今天我准备和你详细介绍如何开始参与开源项目,帮助你在 GitHub 上完成第一个 PR 的合入。当然,除了正常的 PR 合入流程之外,我还准备详细介绍一下如果一个 PR 提交后遇到了冲突、需要追加 commits、需要合并 commits 等等相对复杂问题该如何解决。—1—为什么要参与开源项目本文我不打算长篇大论“为什么要参与开源”,详细介绍参与开源项目的收获,我想仅...

http://www.54tianzhisheng.cn/ 2869

如何参与一个 GitHub 开源项目

最近一年开源项目特别的热,很多技术大会或论坛都以开源项目作为主题进行探讨,可见这是一种趋势。而Github作为开源项目的著名托管地,可谓无人不知,越来越多的个人和公司纷纷加入到Github的大家族里来,为开源尽一份绵薄之力。对于个人来讲,你把自己的项目托管到Github上并不表示你参与了Github开源项目,只能说你开源了自己的项目,可以任别人自由下载。那么该如何参与Github的开源项目呢?相信很多人都有这方面的疑问,网上也有一些参差不齐的教程教大家如何“pull request”、如何“commit”等

程序媛想事儿 2万+

如何学习开源项目

请注意,在开始学习开源项目之前,最好有过项目经验,不然在阅读开源项目代码的时候可能会有点痛苦,特别是比较大一点的开源项目

qq_54522796的博客 1505

开源项目热榜

H = Wwatch X#watch + Wstar X#star +Wfork X#fork +Wissue X#issue +Wmr X#mr H表示热度值,Wwatch、Wstar、Wfork、Wissue、Wmr分别表示5个统计维度的权重,#watch、#star、#fork、#issue、#mr分别表示5个统计维度的统计值。按照热度降序,输出开源项目的名字,对于热度值相等的,按照项目名字转换为全小写字母后的字典序排序('a'>'b'>'c'>...>'x'>'y'>'z')。

面试高手的博客 1万+

10 个 Swift 开源项目

[译]过去一个月最

super_man_ww的博客 4932

C#开源项目大全

C#开源项目大全 商业协作和项目管理平台-TeamLab 网络视频会议软件-VMukti 驰骋工作流程引擎-ccflow 【免费】正则表达式测试工具-Regex-Tester Windows-Phone-7-SDK Excel-读写组件-ExcelLibrary .NET集成开发环境-MonoDevelop 电话软交换机-FreeSWITCH 开源操作...

Code_Boy_Code的博客 7651

如何高效地在网上找开源项目?

学习编程,最高效的还是找个项目,在实际的项目开发中提升自己的编程技能,积累实战经验。如果手边没有项目可做,那就去找开源项目,找开源项目,认准一个网站就够了,那就是 github.com。本...

somenzz的博客 4129

利用开源项目打造个人品牌

《利用开源项目打造个人品牌》 开源项目不仅是技术创新的温床,更是个人成长和品牌打造的绝佳平台。在数字时代,个人品牌的建设对于职业发展至关重要。本文旨在探讨如何利用开源项目这一工具,系统地构建和提升个人品牌。通过以下五个部分的内容,我们将一步步解析开源项目与个人品牌之间的内在联系,展示如何通过实践开源项目,实现个人技术的提升和品牌价值的

AI天才研究院 1024
上一篇: UMENG相关
下一篇: java解压缩
cocos2dx3
博客等级 码龄15年 15粉丝 52原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值