PLA(PinterestLikeAdapterView)
==================================
-
Open source project in order to implement pinterest like list view on android.
(You can check how pinterest app looks like form below link..)
https://play.google.com/store/apps/details?id=com.pinterest&hl=en
This project is statred based on sony deveoper's blog post 'making your own 3d list'.
http://developer.sonymobile.com/2010/05/20/android-tutorial-making-your-own-3d-list-part-1/
But, currenty it is implemented based on android framework 2.3's list view source.
You can check modified list view sources in internal package.
Not supported Features
---------------
* Entry from XML layout.
* Choice Mode & Item Selection.
* Filter
* Handle Key Event & Arrow Scrolling..
TODO:
---------------
* 下拉刷新后保持当前位置
* 多选模式
* 图片的宽度判断
Screen Shot
----------------
新截图
![01](https://github.com/dodola/PinterestLikeAdapterView/raw/master/01.png)
![02](https://github.com/dodola/PinterestLikeAdapterView/raw/master/02.png)
![03](https://github.com/dodola/PinterestLikeAdapterView/raw/master/03.png)
This is a screen shot of sample activity.
![Example Image][3]
How to use
-------------
*To run Sample App.*
1. clone project.
2. run on your android phone.
3. in option menu, you can add items or lunch pull-to-refresh sample.
*To use Pinterest Like Multi Column View.*
1. check this project as library project.
2. MultiColumListView is the view what you need.
*To use pull-to-refresh features.*
1. check this project as library project.
2. MultiColumnPullToRefreshListView class in extra folder is what you need.
Attributes
-----------
* **plaColumnNumber**
Number of column. (default value is 2)
* **plaLandscapeColumnNumber**
Number of column in landscape mode (the orientation that window's width is longer than height.)
Overridable Methods
--------------------
PLA_ListView was made based on Android 2.3 Framework's ListView,
and support those protected methods to let a user customize list view's behavior.
@Override
protected void onMeasureChild(View child, int position, int widthMeasureSpec, int heightMeasureSpec);
@Override
protected void onItemAddedToList(int position, boolean flow );
@Override
protected void onLayoutSync(int syncPos);
@Override
protected void onLayoutSyncFinished(int syncPos);
@Override
protected int getFillChildBottom();
@Override
protected int getFillChildTop();
@Override
protected int getScrollChildBottom();
@Override
protected int getScrollChildTop();
@Override
protected int getItemLeft(int pos);
@Override
protected int getItemTop( int pos );
@Override
protected int getItemBottom( int pos );
@Override
protected void onAdjustChildViews( boolean down );
Change Log
-----------
**2012.11.7**
http://developer.sonymobile.com/2010/05/20/android-tutorial-making-your-own-3d-list-part-1/
기반으로 러프하게 작성되었습니다.
**2012.11.8**
패키지 구조가 com.huewu.pla.* 형태로 변경되었습니다.
안드로이드 2.3 버전의 ListView 기반으로 수정되었습니다. (Don't reinvent the wheel)
프레임워크 소스 중 리스트 뷰 관련 파일을 긁어와 많은 Rabbit Hole 을 땜방했습니다.
결과물은 com.huewu.pla.lib.internal 패키지를 참고하시기 바랍니다.
**2012.11.9**
Android-PullToRefresh 라이브러이와 연동되도록 extra package 를 추가했습니다.
이 오픈소스 프로젝트를 기반으로, https://github.com/chrisbanes/Android-PullToRefresh
해당 소스의 일부 내용을 수정 했습니다. (확장을 위한 visiblity)
스크롤 업/다움 시 그리고 어댑터에 아이템 추가 시 컬럼 위치가 변경되는 버그를 수정했습니다.
**2012.11.10**
xml layout 상에서 컬럼 수를 지정할 수 있도록 두 개의 Attribute 를 추가했습니다.
*plaColumnNumber*
*plaLandscapeColumnNumber*
ActionBarSherlock 라이브러리와 함께 사용할 시 발생하는 Attriubte 충돌 문제를 수정했습니다.
**2012.11.12**
Fling 및 Scroll 시 영역 계산이 제대로 이루어지지 않아서 스크롤이 끝까지 이루어지지 않거나, 화면이 떨리는 버그를 수정했습니다.
Override 가능한 함수들의 이름을 이해하기 쉽게(?) 변경했습니다.
**2012.11.13**
Header View 를 정상적으로 지원합니다.
Pull-To-Refresh 기능을 위해, 기존 사용하던 오픈 소스 대신
https://github.com/erikwt/PullToRefresh-ListView
를 사용하도록 수정하였습니다. 다른 프로젝트와 의존성 없이 사용 가능합니다.
**2012.11.14**
하나 이상의 Header View 와 Footer View 를 지원합니다.
**2012.11.22**
첫번째 아이템이 보이는 경우, 각 컬럼의 Top 포지션을 강제로 정렬 시키도록 수정했습니다.
**2012.11.26**
리스트에 새로운 아이템이 추가되는 경우 Fling 속도가 비정상적으로 빨라지는 버그를 수정했습니다.
**2012.11.28**
Layout 이벤트 시, 아이템의 위치가 변경되는 버그를 수정했습니다.
Item Select 관련된 코드가 제거되었습니다.
TODO
---------------------------------------------
> 1. Fling 및 스크롤바를 지원하지 않습니다.
> 2. Scroll Up / Down 시 재 정렬되는 아이템의 위치가 변경되는 버그가 있습니다.
> 3. 리스트의 마지막 부분에서 스크롤이 자연스럽지 않습니다.
> 4. 어뎁터에 데이터를 추가해도 정상적으로 동작
> 5. PullToRefresh 라이브러리와 연동.
> 6. Fling 속도가 이상함.
> 7. 복잡한 뷰를 사용하는 경우, 스크롤 할 떄 마다 뷰의 위치가 Y Position 이 변경됩니다.
8. 어댑터에 데이터가 삭제, 변경되거나 중간에 삽입 되는 경우 처리
*그외 아주 많은 문제가 있습니다... 아직 열혈 개발 중 인걸요... =)
Contributing
---------------------------------------------
어떤 종류의 지원도 언제나 환영입니다 =)
Any kinds of helps ( bug report / push request / suggestionss ) are welcomed =)
## License
Copyright 2012 huewu.yang
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
[3]: http://cloud.github.com/downloads/huewu/PinterestLikeAdapterView/screenshot.png
没有合适的资源?快使用搜索试试~ 我知道了~
安卓源码 waterfall瀑布流.zip
共143个文件
class:65个
java:25个
xml:17个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 198 浏览量
2023-03-04
17:01:08
上传
评论
收藏 2.37MB ZIP 举报
温馨提示
免责声明:资料部分来源于合法的互联网渠道收集和整理,部分自己学习积累成果,供大家学习参考与交流。收取的费用仅用于收集和整理资料耗费时间的酬劳。 本人尊重原创作者或出版方,资料版权归原作者或出版方所有,本人不对所涉及的版权问题或内容负法律责任。如有侵权,请举报或通知本人删除。
资源推荐
资源详情
资源评论
收起资源包目录
安卓源码 waterfall瀑布流.zip (143个子文件)
resources.ap_ 26KB
PLASample.apk 231KB
jarlist.cache 119B
PLA_AbsListView.class 36KB
PLA_ListView.class 31KB
PLA_AdapterView.class 14KB
MultiColumnListView.class 8KB
XListView.class 8KB
DiskLruCache.class 8KB
PLA_AbsListView$RecycleBin.class 7KB
ImageWorker.class 7KB
R$styleable.class 6KB
PLA_HeaderViewListAdapter.class 6KB
ImageCache.class 5KB
ImageFetcher.class 5KB
PullToRefreshSampleActivity$ContentTask.class 5KB
PLA_AbsListView$PositionScroller.class 4KB
R$attr.class 4KB
PullToRefreshSampleActivity.class 4KB
ScaleImageView.class 4KB
PullToRefreshSampleActivity$StaggeredAdapter.class 4KB
FlowView.class 3KB
ImageResizer.class 3KB
XListViewHeader.class 3KB
ImageWorker$BitmapWorkerTask.class 3KB
PLA_AbsListView$FlingRunnable.class 3KB
Utils.class 3KB
XListViewFooter.class 3KB
R$id.class 3KB
MultiColumnListView$Column.class 2KB
Helper.class 2KB
PLA_AbsListView$CheckForTap.class 2KB
PLA_AdapterView$AdapterDataSetObserver.class 2KB
RetainFragment.class 2KB
PLA_AbsListView$PerformClick.class 2KB
ImageWorker$AsyncDrawable.class 1KB
PLA_AbsListView$LayoutParams.class 1KB
ImageCache$1.class 1KB
FlowTag.class 1KB
PLA_AbsListView$1.class 1KB
Infos.class 1KB
DuitangInfo.class 1KB
XListView$1.class 1KB
PLA_AbsListView$WindowRunnnable.class 1KB
ImageCache$ImageCacheParams.class 1KB
PLA_AbsListView$2.class 1KB
PullToRefreshSampleActivity$StaggeredAdapter$ViewHolder.class 908B
R$string.class 880B
MultiColumnListView$FixedColumn.class 868B
PLA_AdapterView$AdapterContextMenuInfo.class 779B
XListView$2.class 754B
DiskLruCache$1.class 747B
PLA_ListView$FixedViewInfo.class 658B
R$style.class 657B
R.class 653B
R$layout.class 639B
PLA_AdapterView$OnItemSelectedListener.class 594B
PLA_AbsListView$OnScrollListener.class 559B
ImageWorker$ImageWorkerAdapter.class 536B
R$drawable.class 523B
Constants.class 506B
PLA_AdapterView$OnItemLongClickListener.class 458B
PLA_AdapterView$OnItemClickListener.class 446B
XListView$OnXScrollListener.class 403B
BuildConfig.class 349B
PLA_AbsListView$RecyclerListener.class 307B
ScaleImageView$ImageChangeListener.class 277B
XListView$IXListViewListener.class 262B
.classpath 414B
Thumbs.db 7KB
classes.dex 595KB
135726li287797wqdd72n9.gif 175KB
效果图.gif 175KB
.gitignore 89B
android-support-v4.jar 384KB
android-support-v4-20af65dd758a27f7dea1a9b0758fa50a.jar 148KB
R.java 192KB
PLA_AbsListView.java 110KB
PLA_ListView.java 75KB
PLA_AdapterView.java 31KB
MultiColumnListView.java 14KB
ImageWorker.java 12KB
XListView.java 11KB
DiskLruCache.java 10KB
PLA_HeaderViewListAdapter.java 9KB
PullToRefreshSampleActivity.java 8KB
ImageCache.java 8KB
ImageResizer.java 7KB
ImageFetcher.java 6KB
ScaleImageView.java 5KB
Utils.java 4KB
XListViewHeader.java 4KB
XListViewFooter.java 3KB
FlowView.java 3KB
RetainFragment.java 3KB
Helper.java 2KB
FlowTag.java 872B
DuitangInfo.java 631B
Infos.java 562B
Constants.java 400B
共 143 条
- 1
- 2
资源评论
大富大贵7
- 粉丝: 393
- 资源: 8868
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功