首页 > 其他分享 >ListView之setEmptyView的问题

ListView之setEmptyView的问题

时间:2023-04-06 20:31:45浏览次数:52  
标签:listView setEmptyView emptyView 问题 tv new ListView TextView


使用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.MATCH_PARENT, LayoutParams.MATCH_PARENT));
emptyView.setText(“This appears when the list is empty”);
emptyView.setGravity(Gravity.CENTER);
emptyView.setTextSize(TypedValue.COMPLEX_UNIT_SP, 16);
emptyView.setVisibility(View.GONE);
((ViewGroup)listView.getParent()).addView(emptyView);
listView.setEmptyView(emptyView);



结果真的可行!


标签:listView,setEmptyView,emptyView,问题,tv,new,ListView,TextView
From: https://blog.51cto.com/u_5454003/6174099

相关文章

  • 解决微信小程序主包过大,无法上传代码问题
    1、我的开发工具是HBuilderX,所以,在运行小程序的时候可以勾选运行>运行到模拟器>运行时是否压缩代码,   小程序运行时,这里会提示2、所以,可以选择发行>小程序-微信,注意括号的内容,只适用于uni-app   3、另外,在package.json文件里面加入 --minimize最小压缩 "dev:m......
  • 马克思的手稿问题
    题目说明背景信息:马克思手稿中有一道趣味数学问题:有30个人,其中有男人、女人和小孩。在一家饭馆吃饭共花了50先令;每个男人花了3先令,每个女人花了2先令,每个小孩花了1先令;问男人、女人和小孩各有几人?分析:设男人有x人,女人有y人,小孩有z人,根据题意得方程:x+y+z=30  ①;3x+2y+z=5......
  • 船舶的布局问题学习
    船舶的布局问题学习​ 船舶的布局问题包括许多小的布局类问题,包括船舶机舱设备的布局问题、船舶管路的布局问题、船舶舱室内属具的布局问题和船舶舱室划分布局问题等。船舶机舱设备的布局问题​ 船舶机舱设备布局设计属于密闭有限空间多目标优化设计问题,作为船舶的心脏,机舱设备......
  • begin :id := sys.dbms_transaction.local_transaction_id; end;问题
    我在session876中執行完下面sql后select*fromtable在到另一session中執行SELECT/*+ORDERED*/sql_textFROMv$sqltextaWHERE(a.hash_value,a.address)IN(SELECTDECODE(sql_hash_value,0,prev_hash_value,sql_hash_value),......
  • 关于python安装模块之后pychram仍然提示没有安装模块的问题
    项目场景:如图所示:需要安装的包已经安装好,但是到了pycharm里就没法使用,相信很多小伙伴遇到过这个问题。原因分析:遇到这个问题的主要原因是你的电脑里安装了两个pycharm解释器,你安装后,实际上是安装到了你电脑的Python3而非pycharm解释器。解决方案:所以我们可以在pycharm里面直......
  • 项目中没有依赖Kotlin,结果报错Kotlin版本问题
    ​ 背景:使用intellij-idea工具,springboot项目,使用的maven问题:项目中没有依赖Kotlin,结果报错Kotlin版本问题,如下Kotlin:ModulewascompiledwithanincompatibleversionofKotlin.Thebinaryversionofitsmetadatais1.7.1,expectedversionis1.1.15.解决方案:......
  • SSL peer shut down incorrectly问题的解决
    问题描述前两天运行了一个其他类型的文件,然后今天再重新试着运行一下我的Android文件,就出现了这样一个错误,麻了啊家人们!问题解决找到Android项目中的GradleScripts,里面的gradle-wrapper.properties文件;里面的distributionURL属性,他并不支持HTTPs协议,需要将其改成http;更崩溃......
  • 关于修改前端请求原生request加锁问题
    1正常情况后端获取前端的request请求:(原生已加锁,修改失效校验)Map<String,String[]>parameterMap=req.getParameterMap();......报错:错误:java.lang.IllegalStateException:NomodificationsareallowedtoalockedParameterMapatorg.apache.catalina.util.Paramet......
  • js中通过数据库查询省,后自动带出市显示的问题
    //注册地址varprovince=SQL("selectprovincefromprojectwherecode='"+code+"'andisdelete=0orderbyindatelimit1");$("#field_2c923daf70a540290170aa8ad7a102ff").val(province);varcity=SQL("selectcityfrom......
  • spring boot搭建出现的问题
    1.springboot2.0报错:dataSourceordataSourceClassNameorjdbcUrlisrequired.]withrootcause原因:springboot连接数据库是默认的是:spring.datasource为前缀而在代码中mysql的链接配置是这样的   这样我们在application.properties文件配置中就必须使用数据源前......