我在活动中有一个带页脚的列表视图。
我想做的是:
以下是活动onCreate
方法
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_lecture_refer_room);
// making listview...
ListView listView = (ListView) findViewById(R.id.referList);
...
...
String[] from = {"line1", "line2"};
int[] to = {android.R.id.text1, android.R.id.text2};
SimpleAdapter adapter = new SimpleAdapter(this, mapList,
android.R.layout.simple_list_item_2, from, to);
// footer_layout is in refer_footer.xml
View footer = getLayoutInflater().inflate(R.layout.refer_footer, null, false);
LinearLayout ll = (LinearLayout)findViewById(R.id.footer_layout);
TextView tv= new TextView(this);
tv.setText(element.text());
tv.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT));
tv.setVisibility(View.VISIBLE);
ll.addView(tv);
listView.addFooterView(footer);
listView.setAdapter(adapter);
//setContentView(R.layout.activity_lecture_refer_room);
}
}
有两个.xml文件。(一个用于包含listview的活动,一个用于页脚)
要添加textview,我使用setContentView(R.layout.refer_footer);
并成功添加了textview。但是当我运行一个应用程序时,它只显示页脚的内容。(而不是listview)所以我使用setContentView(R.layout.activvity_lecture_refer_room);
然后应用程序不显示任何内容。
如何显示包含页脚的lsitview?
答案 0 :(得分:2)
下面:
setContentView(R.layout.refer_footer);
无需使用setContentView
布局调用refer_footer
,因为refer_footer
布局适用于使用addFooterView
添加的ListView页脚:
// inflate foooter layout
View footer = getLayoutInflater().inflate(R.layout.refer_footer,
null, false);
// get footer_layout from footer
LinearLayout ll = (LinearLayout)footer.findViewById(R.id.footer_layout);
// create TextView
TextView tv= new TextView(this);
tv.setText(element.text());
tv.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT));
tv.setVisibility(View.VISIBLE);
// add textview to footer_layout
ll.addView(textview);
// set layout for footer
listView.addFooterView(footer);