Ответ 1
Просто используйте ListView # addHeaderView (View v, Object data, boolean isSelectable); и соответствующий метод addFooter()
.
Цель параметра Object data
.
Исходный код ListView описывает параметр data
как:
Данные, поддерживающие представление. Это возвращается из ListAdapter # getItem (int).
Это означает, что если я использую listView.getAdapter().getItem(0);
, он вернет объект data
из нашего заголовка.
Я расскажу об этом с помощью примера:
listView = (ListView) findViewById(R.id.list);
String[] array = new String[] {"one", "two", "three"};
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, array);
Затем добавьте заголовок и установите адаптер:
listView.addHeaderView(view, "Potato", false);
listView.setAdapter(adapter);
Позже, если мы спросим:
Log.v("ListAdapter", listView.getAdapter().getItem(0)); // output: "Potato"
Log.v("ArrayAdapter", adapter.getItem(0)); // output: "one"