Android开发:ListView添加EmptyView的帮助类

在项目开发过程中,会碰到许许多多的ListView,古老的方法就是每碰到一个ListView,就在xml文件里面写上emptyView,然后添加emptyView,其实在很多时候,不同ListView的emptyView是一样的,对此,写一个简单的帮助类,在ListView需要增加emptyView的时候,只要添加一行代码就可以实现了


帮助类的名称叫EmptyViewHelper,代码如下:


public class EmptyViewHelper {
	private ListView mListView;
	private View emptyView;
	private Context mContext;
	private String mEmptyText;
	private TextView mTextView;
	
	public EmptyViewHelper(ListView listView) {
		mListView = listView;
		mContext = listView.getContext();
		initEmptyView();
	}
	
	public EmptyViewHelper(ListView listView, String text) {
		mListView = listView;
		mContext = listView.getContext();
		mEmptyText = text;
		initEmptyView();
	}

	private void initEmptyView() {
		emptyView = View.inflate(mContext, R.layout.empty_view, null);
		((ViewGroup)mListView.getParent()).addView(emptyView);
		mListView.setEmptyView(emptyView);
		if (!TextUtils.isEmpty(mEmptyText)) {
			((TextView)emptyView.findViewById(R.id.textview)).setText(mEmptyText);
		}
	}

}


这个帮助类,获取当前的Listview,然后inflate提前写好的emptyView,然后设置好emptyView就可以了


然后,当一个listview需要添加emptyView的时候,只要如下一行代码就可以了

EmptyViewHelper emptyViewHelper = new EmptyViewHelper(mListview, "你还没有订单");

实现方法还是很简单的,这样做有以下好处:

1、预前写好emptyView,每次碰到需要设置emptyView,只要一行代码就可以实现

2、当emptyView需要更改的时候,只要更改了emptyView,所有listview中绑定的emptyView也就随着更改了


我自从在项目中使用了该帮助类,开发中节约了许多的时间,现分享出来,作为下次开发时候的备份,也希望对大家略有助益。。。。


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。