blog

アンドロイド・オープンソース・プロジェクト:パーソナライズされたコントロール(見る)章

この記事では、Androidの優れたオープンソースプロジェクト - パーソナライズされたコントロールのために、主にListView、ActionBar、Menu、ViewPager、Gallery、G...

Jul 7, 2025 · 21 min. read
シェア

Android开源项目系列汇总已完成,包括:

Android开源项目:开发及测试工具篇

Android开源项目:优秀个人和团体篇

ListView

1. android-pulltorefresh 一个强大的拉动刷新开源项目,支持各种控件下拉刷新

ListView、ViewPager、WevView、ExpandableListView、GridView、ScrollView、Fragment上下左右拉动刷新,比下面johannilsson那个只支持ListView的强大的多。并且他实现的下拉刷新ListView在item不足一屏情况下也不会显示刷新提示,体验更好。

chrisbanes/Android-PullToRefresh

Demo地址:Trinea/TrineaDownload/blob/master/pull-to-refreshview-.apk?raw=true

2. android-pulltorefresh-listview 下拉刷新ListView

johannilsson/android-pulltorefresh

Demo地址:Trinea/TrineaDownload/blob/master/pull-to-refresh-listview-.apk?raw=true

PS:这个被很多人使用的项目实际有不少bug,推荐使用上面的android-pulltorefresh

3. DropDownListView 下拉刷新及滑动到底部加载更多ListView

Trinea/AndroidCommon

Demo地址:Trinea/TrineaDownload/blob/master/.apk?raw=true

文档介绍:

4. DragSortListView 拖动排序的ListView

同时支持ListView滑动item删除,各个Item高度不单选、复选、CursorAdapter做为适配器、拖动背景变化等

bauerca/drag-sort-listview

Demo地址:

APP示例:Wordpress Android

5. SwipeListView 支持定义ListView左右滑动事件,支持左右滑动位移,支持定义动画时间

47deg/android-swipelistview

Demo地址:store/apps/details?id=...swipelistview

6. Android-SwipeToDismiss 滑动Item消失ListView

romannurik/Android-SwipeToDismiss

支持3.0以下版本见:JakeWharton/SwipeToDismissNOA

Demo地址:JakeWharton/SwipeToDismissNOA/.apk/qr_code

emilsjolander/StickyListHeaders

APP示例:Android 4.0联系人

效果图:emilsjolander/StickyListHeaders/master/.gif

beworker/pinned-section-listview

效果图:beworker/pinned-section-listview/master/.png

JimiSmith/PinnedHeaderListView

ManuelPeinado/QuickReturnHeader

Demo地址:Trinea/TrineaDownload/blob/master/quick-return-header-.apk?raw=true

APP示例:google plus

** 11. IndexableListView ListView右侧会显示item首字母快捷索引,点击可快速滑动到某个item**

woozzu/IndexableListView

Demo地址:Trinea/TrineaDownload/blob/master/indexable-.apk?raw=true

nolanlawson/CustomFastScrollViewDemo

效果图:nolanlawson/CustomFastScrollViewDemo/master/.png

rno/Android-ScrollBarPanel

效果展示:rno/Android-ScrollBarPanel/raw/master/demo_.png

tjerkw/Android-SlideExpandableListView

Demo地址:Trinea/TrineaDownload/blob/master/slide-expandable-listView-.apk?raw=true

twotoasters/JazzyListView

Demo地址:store/apps/details?id=...sample

效果展示:

16. ListViewAnimations 带Item显示动画的ListView,动画包括底部飞入、其他方向斜飞入、下层飞入、渐变消失、滑动删除等

nhaarman/ListViewAnimations

Demo地址:

17. DevsmartLib-Android 横向ListView

dinocore1/DevsmartLib-Android

Demo地址:Trinea/TrineaDownload/blob/master/horizontal-listview-.apk?raw=true

ActionBar

JakeWharton/ActionBarSherlock

Demo地址:store/apps/details?id=...demos

APP示例:太多了。。现在连google都在用

2. ActionBar-PullToRefresh 下拉刷新,ActionBar出现加载中提示

chrisbanes/ActionBar-PullToRefresh

Demo地址:store/apps/details?id=.....stock

3. FadingActionBar ListView向下滚动逐渐显现的ActionBar

ManuelPeinado/FadingActionBar

Demo地址:store/apps/details?id=...demo

4. NotBoringActionBar google music下拉收缩的ActionBar

flavienlaurent/NotBoringActionBar

Demo地址:"blog/2310"/11/20/making-your-action-bar-not-boring/

APP示例:Google音乐

5. RefreshActionItem 带进度显示和刷新按钮的ActionBar

ManuelPeinado/RefreshActionItem

Demo地址:store/apps/details?id=...demo

APP示例:The New York Times,DevAppsDirect.

6. GlassActionBar 类似玻璃的有一定透明度的ActionBar

ManuelPeinado/GlassActionBar

Demo地址:store/apps/details?id=..glassactionbardemo

APP示例:google music

**Menu **

1. MenuDrawer 滑出式菜单,通过拖动屏幕边缘滑出菜单,支持屏幕上下左右划出,支持当前View处于上下层,支持Windows边缘、ListView边缘、ViewPager变化划出菜单等。

SimonVT/android-menudrawer

Demo地址:android-menudrawer/

APP示例:Gmail、Google Music等大部分google app

2. SlidingMenu 滑出式菜单,通过拖动屏幕边缘滑出菜单,支持屏幕左右划出,支持菜单zoom、scale、slide up三种动画样式出现。

jfeinstein10/SlidingMenu

Demo地址:store/apps/details?id=..example

APP示例:Foursquare, LinkedIn, Zappos, Rdio, Evernote Food, Plume, VLC for Android, ESPN ScoreCenter, MLS MatchDay, 9GAG, Wunderlist 2, The Verge, MTG Familiar, Mantano Reader, Falcon Pro , MW3 Barracks

3. ArcMenu 支持类似Path的左下角动画旋转菜单及横向划出菜单、圆心弹出菜单

daCapricorn/ArcMenu

APP示例:Path

效果图:"u/11369786"/.png

"u/11369786"/.png

"u/11369786"/.png

4. android-satellite-menu 类似Path的左下角动画旋转菜单

siyamed/android-satellite-menu

Demo地址:Trinea/TrineaDownload/blob/master/satellite-menu-.apk?raw=true

APP示例:Path

5. radial-menu-widget 圆形菜单,支持二级菜单

p/radial-menu-widget/

效果图:"7377/11621125451"_d1773c2dcc_.jpg

6. Android Wheel Menu 圆形旋转选取菜单

anupcowkur/Android-Wheel-Menu

效果图:anupcowkur/Android-Wheel-Menu/master/graphics/.gif

7. FoldingNavigationDrawer滑动并以折叠方式打开菜单

"tibi1217"/FoldingNavigationDrawer-Android

使用介绍:store/apps/details?id=...sample

效果图:VnKUZenAozQ0KFAm5blFTGqMaKFjvX-BK2JH-jrX1sIXVTqciACqRhqFH48hc4pm2Q=h310-rw

ViewPager 、Gallery

JakeWharton/Android-ViewPagerIndicator

Demo地址:store/apps/details?id=..sample

APP示例:太多了。。

2. JazzyViewPager 支持Fragment切换动画的ViewPager,动画包括转盘、淡入淡出、翻页、层叠、旋转、方块、翻转、放大缩小等

jfeinstein10/JazzyViewPager

Demo地址:jfeinstein10/JazzyViewPager/blob/master/.apk?raw=true

效果图:类似桌面左右切换的各种效果,不过桌面并非用ViewPager实现而已

3. Android-DirectionalViewPager 支持横向和纵向的ViewPager

JakeWharton/Android-DirectionalViewPager

Demo地址:details?id=..sample

4. android-pulltorefresh 支持下拉刷新的ViewPager

chrisbanes/Android-PullToRefresh

Demo地址:Trinea/TrineaDownload/blob/master/pull-to-refreshview-.apk?raw=true

5. FancyCoverFlow支持Item切换动画效果的类似Gallery View

davidschreiber/FancyCoverFlow

Demo地址:store/apps/details?id=....samples

效果图:

相比下面的PhotoView,在被放大后依然能滑到下一个item,并且支持直接从url和文件中获取图片,

Dreddik/AndroidTouchGallery

Demo地址:

7. Salvage view 带View缓存的Viewpager PagerAdapter,很方便使用

JakeWharton/salvage

下页精彩继续

#p#

GridView

1. StaggeredGridView 允许非对齐行的GridView

类似Pinterest的瀑布流,并且跟ListView一样自带View缓存,继承自ViewGroup

maurycyw/StaggeredGridView

Demo地址:Trinea/TrineaDownload/blob/master/staggered-gridview-.apk?raw=true

APP示例:Pinterest等

2. AndroidStaggeredGrid 允许非对齐行的GridView

类似Pinterest的瀑布流,继承自AbsListView

etsy/AndroidStaggeredGrid

APP示例:Pinterest等

3. PinterestLikeAdapterView 允许非对齐行的GridView

类似Pinterest的瀑布流,允许下拉刷新

huewu/PinterestLikeAdapterView

APP示例:Pinterest等

4. DraggableGridView Item可拖动交换位置的GridView,类似桌面的单屏效果

thquinn/DraggableGridView

Demo地址:thquinn/DraggableGridView/blob/master/bin/.apk?raw=true

ImageView

1. PhotoView 支持双击或双指缩放的ImageView

chrisbanes/PhotoView

Demo地址:store/apps/details?id=....sample

APP示例:photup

2. android-gif-drawable 支持fig显示的view

store/apps/details?id=....sample

用jni实现的,编译生成so库后直接xml定义view即可,而且本身不依赖于其他开源项目,所以相对下面的ImageViewEx简单的多

3. ImageViewEx 支持Gif显示的ImageView

frapontillo/ImageViewEx

Demo地址:Trinea/TrineaDownload/blob/master/imageviewex-.apk?raw=true

依赖很多,编译过程很繁琐!|_|!

4. RoundedImageView 带圆角的ImageView

vinc3m1/RoundedImageView

效果图:makeramen/RoundedImageView/master/.png

ProgressBar

1. SmoothProgressBar 水平进度条

castorflex/SmoothProgressBar

Demo地址:store/apps/details?id=....sample

2. ProgressWheel 支持进度显示的圆形ProgressBar

Todd-Davies/ProgressWheel

Demo地址:Trinea/TrineaDownload/blob/master/progress-wheel-.apk?raw=true

3. android-square-progressbar 在图片周围显示进度

mrwonderman/android-square-progressbar

Demo地址:store/apps/details?id=...square_progressbar_example

APP示例:square

效果图:host/0BwESwPCuXtw7eExwSFVLQkR2TTg/.png

4. HoloCircularProgressBar Android4.1 时钟App样式

passsy/android-HoloCircularProgressBar

APP示例:Android4.1时钟App

效果图:passsy/android-HoloCircularProgressBar/master/raw/.png

其他

1. achartengine 强大的图标绘制工具

支持折线图、面积图、散点图、时间图、柱状图、条图、饼图、气泡图、圆环图、范围条形图、拨号图/表、立方线图及各种图的结合

p/achartengine/

官方网站:

效果图:dimages/average_.png

dimages/temperature_range_.png

dimages/combined_.png

dimages/budget_.png

APP示例:Wordpress Android,Google Analytics

2. GraphView 绘制图表和曲线图的View

可用于Android上的曲形图、柱状图、波浪图展示

jjoe64/GraphView

Demo工程:jjoe64/GraphView-Demos

Demo地址:store/apps/details?id=..umano

APP示例:Wordpress Android,Google Analytics

3. android-flip 类似Flipboard翻转动画的实现

openaphid/android-flip

Demo地址:openaphid/android-flip/blob/master/FlipView/Demo/APK/Aphid-FlipView-.apk?raw=true

APP示例:flipboard

4. FlipImageView 支持x、y、z及动画选择的翻转动画的实现

castorflex/FlipImageView

Demo地址:store/apps/details?id=...flipimageview

5. SwipeBackLayout 左右或向上滑动返回的Activity

Issacw0ng/SwipeBackLayout

Demo地址:store/apps/details?id=...demo

6. Cards-UI 卡片式View,支持单个卡片,item为卡片的ListView

afollestad/Cards-UI

Demo地址:Trinea/TrineaDownload/blob/master/cards-ui-.apk?raw=true

7. cardslib 卡片式View,支持单个卡片,item为卡片的ListView和GridView

gabrielemariotti/cardslib

Demo地址:store/apps/details?id=...demo

8. android-styled-dialogs 可自定义样式的dialog

默认与Holo主题样式一致,在Android2.2以上同一样式

inmite/android-styled-dialogs

Demo地址:Trinea/TrineaDownload/blob/master/styled-dialogs-.apk?raw=true

9. Crouton 丰富样式的Toast

允许alert、comfirm、info样式及点击消失样式,允许设置Toast显示时间,允许自定义View。

keyboardsurfer/Crouton

Demo地址:store/apps/details?id=....crouton

10. supertooltips 带动画效果的Tips显示

nhaarman/supertooltips

Demo地址:store/apps/details?id=..supertooltips

11. Android ViewBadger为其他View添加角标等

jgilfelt/android-viewbadger

Demo地址:Trinea/TrineaDownload/blob/master/android-.apk?raw=true

效果图:

umano/AndroidSlidingUpPanel

Demo地址:

APP示例:Google Music精简播放栏

13. android-times-square Android日历部件

支持选取单个日期,多个日期,及日期区间段和对话框形式显示

square/android-times-square

Demo地址:Trinea/TrineaDownload/blob/master/times-square-.apk?raw=true

14. android-calendar-card 日历

kenumir/android-calendar-card

Demo地址:store/apps/details?id=..calendarcardsample

效果图:kenumir/android-calendar-card/master/calendar-card-sample/_work/device-2013-10-12-.png

p/color-picker-view/

效果图:.jpg

16. HoloColorPicker 颜色选择器

LarsWerkman/HoloColorPicker

Demo地址:file/d/0BwclyDTlLrdXRzVnTGJvTlRfU2s/edit

17. AndroidWheel Android Wheel支持城市、多种日期时间、密码、图片

sephiroth74/AndroidWheel

效果图:"5532/11621528687"_220c040ba5_.jpg

18. android-flowtextview文字自动环绕其他View的Layout

p/android-flowtextview/

效果图:"albums/ad332/vostroman1005"/.png

19. Segmented Radio Buttons for Android iOS’s segmented controls的实现

vinc3m1/android-segmentedradiobutton

Demo地址:thquinn/DraggableGridView/blob/master/bin/.apk?raw=true

效果图:vinc3m1/android-segmentedradiobutton/master/screens/.png

20. TableFixHeaders 第一列固定的Table

InQBarna/TableFixHeaders

Demo地址:

21. Android Form EditText 验证输入合法性的编辑框

支持输入、英文、ip、url等多种正则验证

vekexasia/android-edittext-validator

Demo地址:

22. UITableView ios风格控件

包括Button、ListView、TableView

thiagolocatelli/android-uitableview

Demo地址:Trinea/TrineaDownload/blob/master/ui-tableview-.apk?raw=true

23. ATableView ios风格控件

dmacosta/ATableView

Demo地址:store/apps/details?id=...demo

24. UndoBar屏幕底部显示取消或是确认的PopupWindows

效果图:

  1. Inscription可用于展示应用change和new feature信息

使用介绍:jfeinstein10/JazzyViewPager/blob/master/.apk?raw=true

效果图:类似桌面左右切换的各种效果,不过桌面并非用ViewPager实现而已

27. Cropper 图片局部剪切工具,可触摸控制选择区域或旋转

edmodo/cropper

使用介绍:edmodo/cropper/wiki

效果图:

rock3r/GlowPadBackport

Demo地址:

效果图:"U070"b6Lh6cVsVwx4jN-5nq0xqiB1PBzrYABPeJIEe2hZQ5UWOxc-FDUG77wADelToHA=h310-rw

29. GlowPadView Android4锁屏界面解锁

nadavfima/GlowPadView

效果图:nadavfima/GlowPadView/master/.png

30. android-lockpattern Android的图案密码解锁

Demo地址:

使用介绍:

示例APP:Android开机的图案密码解锁,支付宝的密码解锁

Read next

マイクロソフト・リサーチ・アジアの革新的技術一覧:ビッグデータを利用して自然を監視する

先日、北京で「Microsoft Research Asia Innovation Day 2013」が開催されました。このイベントは、「自然なユーザーインターフェース」、「ビッグデータと機械学習」、「クラウドコンピューティングとモバイルテクノロジー」、「テクノロジー主導の製品イノベーション」という4つのテーマを中心に行われました。このイベントでは、「ナチュラル・ユーザー・インターフェース」、「ビッグデータと機械学習」、「クラウドコンピューティングとモバイルテクノロジー」、「テクノロジー主導の製品イノベーション」という4つのテーマのもと、21の最先端の革新的なテクノロジーとアプリケーションが紹介されました。

Jul 7, 2025 · 3 min read