Android开源介绍-UI组件


终端的开发,UI的重要性不言而喻,如何快速开发出优雅漂亮的UI,android的一些开源UI组件,提供了很好的参考。
参考:

oschina Android UI组件 
最火的Android开源项目(一)
最火的Android开源项目(二)
最火的Android开源项目(完结篇)

1. ActionBarSherlock


在3.0之前使用ActionBar,ActionBarSherlock提供了很好的兼容。ActionBarSherlock 是Android compatibility library 的一个扩展,ActionBarSherlock 被设计成通过一个API就能够很方便使用所有版本的Android操作栏的设计模式.
对于Android 4.0及更高版本,ActionBarSherlock可以自动使用本地ActionBar实现,而对于之前没有ActionBar功能的版本,基于Ice Cream Sandwich的自定义动作栏实现将自动围绕布局。能够让开发者轻松开发一款带动作栏(Action bar)的应用,并且适用于Android 2.x及其以上所有版本。
这个是Android牛人开发的一个开源组件,关注 JakeWharton,你会有更多惊喜。
12345678910111213141516171819202122232425262728
          
          
import com.android.volley.toolbox.HurlStack ;
import com.squareup.okhttp.OkHttpClient ;
import java.io.IOException ;
import java.net.HttpURLConnection ;
import java.net.URL ;
 
/**
* An {@link com.android.volley.toolbox.HttpStack HttpStack} implementation which
* uses OkHttp as its transport.
*/
public class OkHttpStack extends HurlStack {
private final OkHttpClient client ;
 
public OkHttpStack () {
this ( new OkHttpClient ());
}
 
public OkHttpStack ( OkHttpClient client ) {
if ( client == null ) {
throw new NullPointerException ( "Client must not be null." );
}
this . client = client ;
}
 
@Override protected HttpURLConnection createConnection ( URL url ) throws IOException {
return client . open ( url );
}
}
view raw OkHttpStack.java hosted with ❤ by  GitHub

2. Android-ViewPagerIndicator

这个又是JakeWharton的杰作,说过了关注他,会有惊喜。
ViewPagerIndicator是扩展了support库中ViewPager的用法。
Paging indicator widgets compatible with the ViewPager from the Android Support Library and ActionBarSherlock. Originally based on Patrik Åkerfeldt's ViewFlow

3. Android PullToRefresh

该项目为 Android 应用提供一个向下滑动即刷新列表的功能。这个很常用,现在的列表中,都提供了向下滑动刷新的功能。

4. Android瀑布流

实现了类似于迷尚android和蘑菇街android的瀑布流布局。
不过作者已经声明:

此项目由于最初设计问题,导致现在问题比较多,暂时停止维护。我现在在其他类似的瀑布流上进行完善开发,请关注:PinterestLikeAdapterView

dodola github.com/dodola/…

看来作者还是很用心的,值得关注。

5. android-bootstrap


bootstrap,twitter开源的一个项目也叫这个。怎么看该项目都是一个聚合
android-bootstrap 是一个模板/引导/样板文件的应用程序,包括大量的优秀的开放源码工具和框架
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.
好东西啊,什么都有了,同学们自己挑选吧。

6. SlidingMenu

SlidingMenu是一个开源的Android库,能够让开发者轻松开发一款应用,实现类似于Google+、Youtube和Facebook应用中非常流行的滑动式菜单。
目前使用该项目的应用:

  • Foursquare 
  • Rdio
  • Evernote Food
  • Plume
  • VLC for Android
  • ESPN ScoreCenter
  • MLS MatchDay
  • 9GAG
  • Wunderlist 2
  • The Verge
  • MTG Familiar
  • Mantano Reader
  • Falcon Pro (BETA)
  • MW3 Barracks

7. AndroidSideMenu

AndroidSideMenu能够让你轻而易举地创建侧滑菜单。需要注意的是,该项目自身并不提供任何创建菜单的工具,因此,开发者可以自由创建内部菜单。
这个与SlidingMenu结合,那岂不是天衣无缝了。

8. android-flip

能够实现Flipboard翻页效果的UI组件

 
是不是很酷啊

9. drag-sort-listview

DragSortListView(DSLV)是Android ListView的一个扩展,支持拖拽排序和左右滑动删除功能。重写了TouchInterceptor(TI)类来提供更加优美的拖拽动画效果。

 
DSLV主要特性:

-完美的拖拽支持;
-在拖动时提供更平滑的滚动列表滚动;
-支持每个ListItem高度的多样性
-公开startDrag()和stopDrag()方法;
-有公开的接口可以自定义拖动的View。
DragSortListView适用于带有任何优先级的列表:收藏夹、播放列表及清单等,算得上是目前Android开源实现拖动排序操作最完美的方案。

10. Android-satellite-menu

模拟path的按钮效果


对于Satellite Menu,其项目发起人siyamed表示,这种菜单结构就像是一个星球四周围绕着许多卫星,而这也就是他为何会以Satellite Menu命名该项目的原因。

11. ArcMenu

又见path的按钮效果

 对于这个项目,其发起人daCapricorn表示,iOS版Path 2.0上的用户体验非常奇妙,但其Android版本却差太多。因此,他就尝试着在Android上做出像iOS版本那样的效果,而事实也的确如此。

12. ImageFilterForAndroid

在开源ImageFilterForAndroid中拥有许多丰富的图片效果,是由来自国内的代震军发起的一个开源项目。除了Android平台,还有Windows Phone和iOS移动平台,三个平台源码同步。
代震军也搞Android了吗,以前还看过他对Mongodb源码的分析。

13. Crouton

Crouton是Android上的一个可以让开发者对环境中的Toast进行替换的类,以一个应用程序窗口的方式显示,而其显示位置则由开发者自己决定。


以后自定义Toast,就很方便了。

14. Android-SlideExpandableListView

如果你对Android提供的Android ExpandableListView并不满意,一心想要实现诸如Spotify应用那般的效果,那么SlideExpandableListView绝对是你最好的选择。
该库允许你自定义每个列表项目中的ListView,一旦用户点击某个按钮,即可实现该列表项目区域滑动。

15. TimesSquare

Android下一款漂亮的日历控件 

16. StandOut

StandOut 可让你轻松创建 Android 的浮动窗口 

17. Notifications4EveryWhere

基于android 4.1 Notification 样式实现的兼容包。

改进自源com.android.support.v4.app 里面的NotificationCompat.Builder。

由于原官方的兼容包中,只是对Notification 做了一层api 的切换,并没有让旧的平台实现android 4.1 Notification 的新特性。所以,我对照着android4.1的源码把,android 4.1 的部分新的Notification 的特性进行移植,让android 2.2 以上的平台都能够用一致的api 实现同样的效果。

目前除了android 4.1 的bigStyle 还没实现外,其他我知道的特性都已经移植完毕。效果可以看主页的截图。

如果你之前有使用NotificationCompat.Builder 的,你只需把com.android.support.v4.app.NotificationCompat.Builder 替换成com.android.support.v8.app.NotificationCompat.Builder 即可。

  • 0
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值