问题描述
- ListView中不显示HeaderView
-
ListView中加了头和尾后不显示HeaderView。当ListView高度为精确值时(dp)没问题。但当为match_parent和wrap_content时就只能看到尾了,看不到头(头成是空白了)。
activity_main.xml:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <ListView android:id="@+id/lv" android:layout_width="match_parent" android:layout_height="match_parent" > </ListView> </LinearLayout>
listfooter.xml:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/ll_listfooter" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" > <Button android:id="@+id/btn_load_more" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="Loading" /> </LinearLayout>
ActivityMain.java:
ListView lv = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); View listfooter = LayoutInflater.from(this).inflate(R.layout.listfooter, null); lv = (ListView) this.findViewById(R.id.lv); lv.addFooterView(listfooter, null, true); lv.addHeaderView(listfooter, null, true); lv.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1,getData())); Toast.makeText(this, " "+lv.getCount(), Toast.LENGTH_SHORT).show(); } private List<String> getData(){ List<String> data = new ArrayList<String>(); data.add("测试数据1"); data.add("测试数据2"); data.add("测试数据3"); data.add("测试数据4"); return data; }
解决方案
其实你不必要找别人要什么答案的,自己将问题解决就行了;你的这个问题的产生应该还是布局引起的;
如果回答对您有帮助,请采纳
时间: 2024-12-21 21:52:19