編輯:關於Android編程
好的解決辦法就是先加載一定數量的數據,然後在最下方提示正在加載!
動態加載就是把放入adapter中的數據分好幾次加載。在用戶拖動gridview時再加載一定的數據,和sina微博的客戶端類似。
給gridview添加OnScrollListener監聽事件默認會覆蓋下面兩個方法:
下面列舉個列子:
lazyGridView:
/**
* 滾動到底部自動刷新
*
* @author yinghui.hong
*
*/
public class LazyGridView extends GridView implements OnScrollListener {
public LazyGridView(Context context) {
super(context);
}
public LazyGridView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public LazyGridView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount, int totalItemCount) {
}
/**
* 列表視圖滾動
*/
@Override
public void onScrollStateChanged(AbsListView view, int scrollState) {
switch (scrollState) {
case OnScrollListener.SCROLL_STATE_IDLE:
Log.v("onScrollStateChanged", "已經停止:SCROLL_STATE_IDLE");
// 判斷滾動到底部
if (view.getLastVisiblePosition() == (view.getCount() - 1)) {
Log.v("onScrollStateChanged", "到底部啦。可以請求刷新咯~~~~~~");
if (listener != null) {
listener.onScrollBottom();
}
}
break;
case OnScrollListener.SCROLL_STATE_FLING:
Log.v("onScrollStateChanged", "開始滾動:SCROLL_STATE_FLING");
break;
case OnScrollListener.SCROLL_STATE_TOUCH_SCROLL:
Log.v("onScrollStateChanged", "正在滾動:SCROLL_STATE_TOUCH_SCROLL");
break;
}
}
private OnScrollBottomListener listener;
public void setOnScrollBottomListener(OnScrollBottomListener listener) {
this.setOnScrollListener(this);
this.listener = listener;
}
public void removeOnScrollBottomListener() {
listener = null;
System.out.println("removeOnScrollBottomListener");
}
/**
* 列表視圖滾動到底部監聽器
*
* @author yinghui.hong
*
*/
public interface OnScrollBottomListener {
/**
* 列表視圖滾動到底部時響應
*/
public void onScrollBottom();
}
}
主activity:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_circle);
getActionBar().setDisplayHomeAsUpEnabled(true);
mBeans = new ArrayList();
mAdapter = new CircleAdapter(this, mBeans);
gridView = (LazyGridView) findViewById(R.id.gridview);
gridView.setAdapter(mAdapter);
gridView.setOnScrollBottomListener(this);
mPageIndex = 0;
queryJoinedCircles(mPageIndex);
}
Android RecyclerView添加上拉加載更多功能
上一篇文章已經介紹了如何為RecyclerView添加FootView,在此基礎上,要添加分頁加載的功能其實已經很簡單了。 上一篇文章地址:為RecyclerView添加
《極簡筆記》源碼分析(一)
0. 介紹此文將對Github上lguipeng大神所開發的 極簡筆記 v2.0 (點我下載源碼)代碼進行分析學習。通過此文你將學到:應用源碼的研讀方法 MVP架構模式
Android中的AppWidget入門教程
什麼是AppWidget?AppWidget就是我們平常在桌面上見到的那種一個個的小窗口,利用這個小窗口可以給用戶提供一些方便快捷的操作。本篇打算從以下幾個點來介紹App
Android拋物線下載動畫制作過程
下載動畫經常出現在下載需求多的app中,比如游戲下載平台,應用市場……先看看效果圖:實現private void startAnim() { //以bitmap創建