ListView中的标题视图高度

时间:2014-10-14 23:51:34

标签: android android-listview

我正在使用属于ListFragment的ListView。我想添加一个具有特定/自定义高度的标题,但是我在标题视图的高度放置并不重要,它总是具有相同的高度。是否可以修改ListView的标题视图高度?

在我使用的代码下面:

header.xml

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="100dp" />

ListFragment

 @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        TextView fakeHeader = (TextView)getActivity().getLayoutInflater().inflate(R.layout.header, null);
        getListView().addHeaderView(fakeHeader);
    }

1 个答案:

答案 0 :(得分:30)

当您将null作为第二个参数传递给inflate()时,您说没有与该视图关联的父级。这会产生令人遗憾的副作用,因为您使用的任何layout_属性都会被忽略,因为layout_参数会影响父级放置子视图的方式,而不会直接影响子级(与其他视图一样):{{3} } godes详细了解layout_属性。

您可以使用inflate(R.layout.header, getListView(), false)传递ListView,它最终会成为您的标题视图的父级(请注意false表示不直接添加视图 - ListView会自动为您执行此操作)。