使用listView或者gridView时,当列表为空时,有时需要显示一个特殊的empty view来提示用户,一般情况下,如果你是继承ListActivity,只要
<ListView android:id="@id/android:list".../>
<TextView android:id="@id/android:empty.../>
当列表为空时就会自动显示TextView

但是,如果继承Activity的话,想出现上面的效果,就需要手动

<ListView android:id="@+id/list" .../>
<TextView android:id="@+id/empty" .../>

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);

结果真的可行!

更多相关文章

  1. ActionBar
  2. Android(安卓)-- java代码设置margin
  3. Android单元测试
  4. 代码设置android:icon,android:label
  5. Ubuntu10.04 64(32)位 android开发环境建立
  6. android学习日记01-搭配开发环境
  7. android学习日记01-搭配开发环境
  8. android学习日记01-搭配开发环境
  9. android 列表 数据显示总结

随机推荐

  1. Sql Server中REPLACE函数的使用
  2. SQL Server 2016 查询存储性能优化小结
  3. MyBatis MapperProvider MessageFormat拼
  4. SQL Server 触发器实例详解
  5. 常用SQL语句查询分享
  6. ASP.NET和MSSQL高性能分页实例代码
  7. SQL SERVER使用ODBC 驱动建立的链接服务
  8. SQL语句优化提高数据库性能
  9. SQL Server无法收缩日志文件的原因分析及
  10. 实例详解Group by和Having子句