使用ListView:如何添加标题视图?

我迷上了ListView API ,我看到了这个方法:

addHeaderView(View v)

我想要做的是在布局上面有一个布局,这可能吗?

我试着做一些事情:

EditText et=new EditText(this); et.setLayoutParams(new Gallery.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)); et.setInputType(InputType.TYPE_CLASS_TEXT); addHeaderView(et); //makes app crash 

我也试过了

 setContentView(R.layout.tryview); 

但它也使应用程序崩溃。

非常感谢帮助!

编辑 :这个类的代码是:

 public class GroupsActivity extends ListActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); String your_array_contents[] = {"a","ab","c"}; setListAdapter(new ArrayAdapter<String>(this, R.layout.groups_layout, your_array_contents)); EditText et=new EditText(this); et.setLayoutParams(new Gallery.LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.WRAP_CONTENT)); et.setInputType(InputType.TYPE_CLASS_TEXT); ListView lv = getListView(); lv.setTextFilterEnabled(true); lv.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); lv.setAdapter(new ArrayAdapter<String>(GroupsActivity.this, android.R.layout.simple_list_item_multiple_choice, your_array_contents)); lv.addHeaderView(et); //makes app crash lv.setOnItemClickListener(new OnItemClickListener() { public void onItemClick(AdapterView<?> parent, View view, int position, long id) { // When clicked, show a toast with the TextView text // Toast.makeText(getApplicationContext(), ((TextView) view).getText(), //Toast.LENGTH_SHORT).show(); } }); } } 

你根本不能使用View作为ListView的标题。

因为正在通过的观点必须夸大。

看看我的答案在Android ListView的addHeaderView()nullPointerException预定义的更多信息。

编辑:

看看这个教程Android ListView和ListActivity – 教程 。

编辑2 :这个链接是打破了Android的ListActivity页眉或页脚

您可以通过多次调用addHeaderView()来添加尽可能多的头文件。 您必须在将适配器设置为列表视图之前执行此操作。

是的,你可以添加标题像这样:

 LayoutInflater inflater = getLayoutInflater(); ViewGroup header = (ViewGroup)inflater.inflate(R.layout.header, myListView, false); myListView.addHeaderView(header, null, false);