Android组件及UI框架大全

Android 是目前最流行的移动操作系统(还需要加之一吗?)。 随着新版本的不断发布, Android的功能也日益强大, 涌现了很多流行的应用程序, 也催生了一大批的优秀的组件。
本文试图将目前流行的组件收集起来以供参考, 如果你发现本文还没有列出的组件,欢迎在评论中贴出来,我会定期的更新本文。

  • 很好的中文教程
    Google Android官方培训课程中文版

  • awesome-android, android列表。

  • 另,github上的一个项目, 收集了好多的Android开源项目。
    android-open-project。

以下是我收集和精选的Android开源项目。

UI组件

  • ActionBarSherlock
    一个功能强大的ActionBar组件(不仅仅是ActionBar)。 Android 4.0+上使用native action bar, 低版本的Android模拟实现。强大到无语了,必须关注的一个开源组件。

  • SlidingMenu
    一款优秀的侧滑菜单组件。 Google+, YouTube和Facebook在它们的应用中采用的侧滑菜单流行开来, 国内也有很多的应用如网易新闻等也采用了这种菜单方式。 侧滑菜单组件很好几种, 尤以此款最为好用。 看看官方网站上的知名用户就知道了。

  • Android-Universal-Image-Loader
    强大灵活的加载、缓存、显示图片的库。

  • Android-ViewPagerIndicator
    滑动页面几乎成了现在国内的应用的标配了,尤其在你第一次安装/启动应用时, 总会有几张介绍页面让你滑动显示。 用它吧,不会辜负你的。

  • Android-PullToRefresh
    你不陌生, 在列表或者视图的顶部或者底部拖动可以刷新数据和页面。可以和ListView、ExpandableListView、GridView、WebView、ScrollView、HorizontalScrollView、ViewPager配合使用。

  • picasso
    强大的图像下载和缓存库。

  • Android-Bootstrap
    bootstrap风格的按钮。 使用Font Awesome图标字体。

  • facebook-android-sdk
    Facebook提供的SDK, 可以在应用中集成Facebook.

  • android-bootstrap
    不同于上面的Android-Bootstrap。 此项目是一个Android应用程序的模版, 相当于一个脚手架的功能。

  • AndroidStaggeredGrid
    想做瀑布流式的应用吗?用它吧。

  • cardslib
    一种卡片式的布局控件。 记得以前的有道词典的默认页就是这种布局。
    ScreenScreen

  • PhotoView
    ImageView扩展, 支持放缩和手势。

  • ListViewAnimations
    为ListView增加动画, 还提供滑动删除选定项的功能。 类似Android的邮件的删除操作。

  • ion
    又一个图像异步加载库。至少推荐三个了, 轮子不少。

  • android-menudrawer
    又一个滑动菜单的组件。

  • android-swipelistview
    又一个ListView扩展, 支持滑动操作。

  • android-pulltorefresh
    又一个拖动刷新的组件。到此为止说了好多又了。 因为有些功能确实有多个不错的实现。

  • Crouton
    Toast之外的另以选择。

  • StickyListHeaders
    header可以固定的组件。 看下图。

  • drag-sort-listview
    在ListItem拖动重排序。 开发者已经放弃维护了但是关注者依然不少。

  • FreeFlow
    comcast出品的一个布局引擎。 FreeFlow让你很容易的定制布局和漂亮的转换动画。
    看到comcast好激动, 因为他是笔者公司最大的客户。

  • FadingActionBar
    折叠风格的ActionBar. 说起ActionBar, 第一选择不是ActionBarSherlock么?

  • android-viewflow
    可以水平滚动的视图。

  • android-flip
    可以实现类似Flipboard一样的翻页效果。

  • android-times-square
    square出品的日期选择组件。
    ScreenshotScreenshot

  • circular-progress-button
    环形进度条按钮。

  • android-viewbadger
    为视图增加badger。可以做的更好看点。

  • AndroidViewAnimations
    漂亮的视图动画。

  • Android-SlideExpandableListView
    有一个可以滑动的ExpandableListView组件。

  • pinned-section-listview
    GroupName滑动到顶端时会固定不动直到另外一个GroupName到达顶端的ExpandListView

  • android-process-button
    很酷的一个组件,可以在按钮下部显示漂亮的进度条,就像GMAIL一样。

  • android-betterpickers
    更好的时间、日期库。

  • StaggeredGridView
    瀑布流。类似Pinterest。

  • ProgressWheel
    环形进度条。

  • Calligraphy
    在Android中更容易的使用字体。

  • android-satellite-menu
    类似Path一样的菜单。

  • android-actionbarstylegenerator
    action bar风格在线制作。

  • SuperToasts
    扩展的Toast.

  • GlassActionBar
    毛玻璃效果的ction bar.

  • GraphView
    可以产生放缩的线图和直方图。

  • StickyGridHeaders
    可以固定header和分区的Grid。

  • BlurEffectForAndroidDesign
    模糊效果的演示。

  • ArcMenu
    又一个类似Path的环形菜单。

  • cropper
    图像剪切和旋转。

  • Android-AppMsg

  • chromeview
    Android webview组件的实现, 但是基于最新的Chromium 代码。

  • StandOut
    很容易的创建弹出窗口。

  • android-iconify
    集成FontAwesome 。

  • android-gif-drawable
    看名字就知道了。

  • NumberProgressBar
    漂亮的带数字的进度条。

  • Android-SwipeToDismiss
    演示ListView滑动删除。

  • Shimmer-android
    闪烁发光的文本框。
    ScreenShot

  • HoloColorPicker
    Holo风格的颜色选择器。

  • android-crop
    图像裁剪

  • android-edittext-validator
    文本框校验

  • MultiChoiceAdapter
    ListView 支持多选。

  • PinterestLikeAdapterView
    瀑布流。
    0101

  • MPAndroidChart
    非常不错的图表工具。

  • Android-Action-Bar-Icons
    图标资源。

  • Android-UndoBar

  • android-pdfview

  • AndroidCharts
    图表控件

  • Android-Charts
    国人实现的图表控件

  • desCharts
    图表控件

XY chartXY chart

  • PinnedHeaderExpandableListView
    国人实现的一个ExpandableListView,头部可以固定, 并且可以伸缩。

  • XCL-Charts
    国人出品, 图表控件,种类很多。

  • PullToZoomInListView
    滑动ListView时使其HeaderView跟随滑动缩放.

  • NotBoringActionBar
    拖动时顶部可以收缩。

  • FancyCoverFlow

  • transparent-over-animtabsview
    模仿网易云音乐

  • chromium-webview-samples
    webview例子。
    https://github.com/GoogleChrome/chromium-webview-samples
    https://developer.chrome.com/multidevice/webview/gettingstarted
    http://developer.android.com/guide/webapps/webview.html
    http://developer.android.com/reference/android/webkit/WebView.html
    http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2013/1010/1569.html


类库

  • roboguice
    google guice框架在Android平台上的实现。 什么事guice? 它是一个类似Spring的IOC框架。 什么是IOC? 算了,你还是先学习Java的基础知识吧。

  • android-async-http
    基于Apache http client实现的支持异步、回调的android http client组件。

  • androidannotations
    将注解引入到Android开发中,极大的减少代码里,可以更好的维护代码。

  • retrofit
    类型安全的Restful client库。

  • dagger
    一个快速的依赖注入库。这个square公司出了不少的组件库。 square公司就是那个移动支付的创业公司。

  • okhttp
    还是square出品, HTTP+SPDY 客户端。

  • EventBus
    一个专为Android优化的发布订阅框架, event bus模式。 可以在Activity, Fragment 和后台线程之间交流数据。

  • butterknife
    专为视图注入库。

 
      
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
      
class ExampleActivity extends Activity {
@InjectView(R.id.user) EditText username;
@InjectView(R.id.pass) EditText password;
@OnClick(R.id.submit) void submit() {
// TODO call server...
}
@Override public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.simple_activity);
ButterKnife.inject( this);
// TODO Use "injected" views...
}
}
  • robospice
    一个模块化的Android类库, 可以更容易的编写异步的长时间运行的任务。

  • **
    一个加强的基于Guava event bus库。 square出品。

  • AndroidAsync
    又是异步处理库, 支持socket,http (client+server),websocket 和socket.io ,基于nio。

  • ActiveAndroid
    active record风格的操作Android SQLite 数据库。

  • androidquery
    JQuery很熟悉吧。 这是Android版的JQuery。

  • greenDAO
    一个轻量级的快速的ORM方案。 操作SQLite 数据库。

  • Bolts-Android
    一套底层库。

  • scaloid
    极大的减少Android得代码,更易维护。

  • conceal
    Facebook的快速加密类。

  • android-common
    国人实现的一个工具包。

  • xUtils
    国人实现的一个工具包。

  • android-priority-jobqueue
    Path出品的job queue。

  • android-sqlite-asset-helper
    数据库辅助类。 包括数据库的创建与升级。

  • tape
    一组queue类。 square出品。

  • spring-android
    不多说了。

  • joda-time-android
    为Android做了优化

  • spydroid-ipcamera
    将你的收集作为监控设备。


游戏引擎

  • libgdx
    libGDX是基于OpenGL的跨平台的游戏开发框架。

  • AndEngine
    知名的Android 2D OpenGL 游戏引擎。

  • ogengine
    国人开发的国际著名开源引擎AndEngine的一个分支 (往上看)。遵循LGPL开源协议使用OpenGL ES进行图形绘制。同时集成了Box2D物理引擎,因此可以实现复杂的物理效果。

  • citrus
    快速且轻量级的2D & 3D游戏引擎。

  • Cocos2d-Android
    知名的游戏引擎

  • gameclosure
    JavaScript 游戏引擎

  • 游戏引擎列表
    维基百科上的各种游戏引擎, 各种平台的引擎列表, 全。


Android HTML5应用

  • PhoneCap
    早在2011年10月,Adobe收购了Nitobi Software和它的PhoneGap产品,然后宣布这个移动开发框架将会继续开源,并把它提交到Apache Incubator,以便完全接受ASF的管治。

  • Cordova
    Cordova是贡献给Apache后的开源项目,是从PhoneGap中抽出的核心代码,是驱动PhoneGap的核心引擎。你可以把他想象成类似于Webkit和Google Chrome的关系。
    Adobe将会继续以Cordova加上PhoneGap Build和Adobe Shadow的组合提供PhoneGap。 

  • Cordova-SQLitePlugin

 
      
1
 
      
var db = window.sqlitePlugin.openDatabase({name: "my.db"});
  • awesome-cordova
    Cordova插件列表

  • jquerymobile
    JQuery公司出品的移动开发框架。

  • lungo
  • awesome-html5

  • 开源的Javascript游戏引擎
    [
    Pixi.js](https://github.com/GoodBoyDigital/pixi.js) phaser
    [MelonJS](https://github.com/melonjs/melonJS) kiwi.js
    [Crafty](https://github.com/craftyjs/Crafty) PhysicsJS
    [cutjs](https://github.com/piqnt/cutjs) cocos2d

你可能感兴趣的:(android)