===================================================================================================
因为是两列,需要用gridView实现,gridView没有像listview一样的footer,
只能近似的实现,
先说下我这种实现吧,
整个布局是一个RelativeLayout
显示更多... 是一个Linearlayout,上面是GridView,
说到这应该明白了吧。。 就是让LinearLayout设置在底部,GridView在LinearLayout上面。之后就是处理隐藏显示。
gridview设置setOnScrollListener监听
@Override
public void onScroll(AbsListView view, int firstVisibleItem, int visibleItemCount,
int totalItemCount) {
// TODO Auto-generated method stub
if (firstVisibleItem + visibleItemCount >= totalItemCount) {
linear_more.setVisibility(View.VISIBLE);
} else {
linear_more.setVisibility(View.GONE);
}
}
下面的多添加一个, 可加可不加
public MyAdapter(Context context, List<TestObject> testData) {
// TODO Auto-generated constructor stub
this.mContext = context;
this.testData = testData;
testData.add(new TestObject());
mInflater = LayoutInflater.from(context);
}
public void refreshList(List<TestObject> data) {
this.testData = data;
//多添加一个空的
testData.add(new TestObject());
notifyDataSetChanged();
//这里添加一个空的,再加载更多的时候就需要把这个去掉
}
这样只能是近似的实现,肯定很大的缺陷,
而且这种实现最好还能具备两个条件(我这只是针对两列,多的就...看情况)
1、个数是偶数....
2、最好能有美工把背景色和加载更多的LinearLayout 背景色差不多,因为滑动的时候界面显示效果还是不算很好~
下载地址...