Android 如何动态添加页脚视图
我已经创建了一个Android 如何动态添加页脚视图,android,listview,listadapter,Android,Listview,Listadapter,我已经创建了一个ListView并添加了带有addHeaderView的标题,然后在我的ListActivity中调用了setListAdapter。在我调用setListAdapter之后,我如何动态地addFooterView 答复: 我在列表视图中添加了页眉视图和页脚视图(实际上是按钮), 但我使用wrap_content height将它们包装到一个FrameLayout中,然后当我不需要显示标题按钮时,我只需将Visibility(View.go)和FrameLayout包装为0高度,
ListView
并添加了带有addHeaderView
的标题,然后在我的ListActivity
中调用了setListAdapter
。在我调用setListAdapter
之后,我如何动态地addFooterView
答复:
我在列表视图中添加了页眉视图和页脚视图(实际上是按钮),
但我使用wrap_content height将它们包装到一个FrameLayout中,然后当我不需要显示标题按钮时,我只需将Visibility(View.go)和FrameLayout包装为0高度,而Visualy则不可见(与调用removeHeaderView的效果相同),如果我需要再次显示它,则设置Visibility(View.visible)并且显示了它(与addHeaderView的效果相同-在调用设置列表适配器之后,这当然是不可能的)
这里讨论:
查看页眉=GetLayoutFlater()。充气(R.layout.header,null);
视图页脚=GetLayoutFlater()。充气(R.layout.footer,null);
ListView ListView=getListView();
addHeaderView(标题);
添加页脚视图(页脚);
setListAdapter(新阵列适配器)(此,
android.R.layout.simple\u list\u item\u单选,
android.R.id.text1,名称);
查看页眉=GetLayoutFlater()。充气(R.layout.header,null);
视图页脚=GetLayoutFlater()。充气(R.layout.footer,null);
ListView ListView=getListView();
addHeaderView(标题);
添加页脚视图(页脚);
setListAdapter(新阵列适配器)(此,
android.R.layout.simple\u list\u item\u单选,
android.R.id.text1,名称);
你必须这样做
View header = (View)getLayoutInflater().inflate(R.layout.header,null);
SimpleAdapter myAdapter=new SimpleAdapter(this,myList,R.layout.transactionvalues,
new String[] {"transaction_date_time","user_name","site_name","machine_name"},new int[] {R.id.Date_Time,R.id.User,R.id.Site,R.id.Machine});
if(header == null){
lst.removeHeaderView(header);
}else
{
lst.addHeaderView(header,null,false);
}
lst.setAdapter(myAdapter);
你必须这样做
View header = (View)getLayoutInflater().inflate(R.layout.header,null);
SimpleAdapter myAdapter=new SimpleAdapter(this,myList,R.layout.transactionvalues,
new String[] {"transaction_date_time","user_name","site_name","machine_name"},new int[] {R.id.Date_Time,R.id.User,R.id.Site,R.id.Machine});
if(header == null){
lst.removeHeaderView(header);
}else
{
lst.addHeaderView(header,null,false);
}
lst.setAdapter(myAdapter);
09-25 18:43:52.953:错误/AndroidRuntime(229):java.lang.IllegalStateException:无法将页脚视图添加到列表中--已调用setAdapter。@webaloman-查看我编辑的答案。试试这个,让我知道发生了什么。记住页脚和页眉也作为列表元素索引。因此,如果单击页脚下方列表中的第一项,该项索引将为1,而不是0.09-25 18:43:52.953:ERROR/AndroidRuntime(229):java.lang.IllegalStateException:无法将页脚视图添加到列表中--已调用setAdapter。@webaloman-查看我编辑的答案。试试这个,让我知道发生了什么。记住页脚和页眉也作为列表元素索引。因此,如果您单击页脚下方列表中的第一项,该项索引将为1,但不是0。请查看我的editrd答案。试试这个,让我知道发生了什么。看看我的答案。试试这个,让我知道发生了什么。