Android ListView之setEmptyView的问题

网友投稿 244 2022-11-03


Android ListView之setEmptyView的问题

使用listView或者gridView时,当列表为空时,有时需要显示一个特殊的empty view来提示用户,一般情况下,如果你是继承ListActivity,只要        ListView list= (ListView)findViewById(R.id.mylist);  TextView tv= (TextView)findViewById(R.id.myempty);  list.setEmptyView(tv);  误区:  setEmptyView(View)这个函数很有误导性,有时可能会在代码中写EmptyView,像下面这样:  TextView tv= new TextView(this);  tv.setText("this is a empty view")  setEmptyView(tv);  这样是不行的。。。

但是后来我在​​老外的网上​​说下面这样是可行的,注意第4,5行:

TextView emptyView = new TextView(context);emptyView.setLayoutParams(new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));emptyView.setText(“This appears when the list is empty”);emptyView.setVisibility(View.GONE);((ViewGroup)list.getParent()).addView(emptyView);list.setEmptyView(emptyView);

结果是可行的!

自定义emptyView:

reload_layout.xml

在代码中添加:

View emptyView = LayoutInflater.from(getActivity()).inflate(R.layout.reload_layout, null); ((ViewGroup)mListView.getParent()).addView(emptyView); mListView.setEmptyView(emptyView);

ic_reload.png


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Android 二维码扫描怎样实现第二次(重复)扫描
下一篇:Javassist用法详解
相关文章

 发表评论

暂时没有评论,来抢沙发吧~