Я пытаюсь добавить прослушиватель по щелчку к заголовку в просмотре списка.Я могу получить доступ к элементам в списке, но я не могу получить доступ (или даже добавить слушателя) к фактическому заголовку.Причина этого в том, что я хотел бы, чтобы мой список содержал сводку элементов в других списках, и если вы нажмете на заголовок, он перейдет на другой экран, который показывает полный список.Я подумал, что, возможно, индекс, переданный в переопределенный onItemClick, даст ему индекс 0 (являющийся первым элементом в списке), но 0 никогда не передается как индекс;1 - самая низкая передаваемая вещь, и это первый элемент в списке под заголовком.Вот что я имею в виду:
public void onItemClick( final AdapterView<?> parent, final View item,
final int index, final long id) {
switch(index)
{
case 0:
Toast.makeText( this, "CLICKED ON HEADER", Toast.LENGTH_LONG).show();
break;
case 1:
Toast.makeText( this, "Clicked on 1st item in list", Toast.LENGTH_LONG).show();
...
Я также подумал, что, возможно, я мог бы добавить значок к заголовку и добавить прослушиватель при нажатии на значок, но я продолжаю получать нулевой указатель:
favorites_list_view = (ListView) findViewById ( R.id.main_favorite_view );
FavoritesAdapter adapter = new FavoritesAdapter( (Context)this, favoriteData );
View header = (View)getLayoutInflater().inflate(
R.layout.list_header_with_icon, null );
TextView headerTitle = (TextView)header.findViewById( R.id.main_header_text );
headerTitle.setText( "Top Favorites" );
headerIcon = (ImageButton)findViewById( R.id.main_header_icon );
headerIcon.setOnClickListener( (OnClickListener)this );
favorites_list_view.addHeaderView( header );
favorites_list_view.setAdapter( adapter );
favorites_list_view.setOnItemClickListener( (OnItemClickListener)this );
Это не работает, даже если позже я перенесу настройку слушателя заголовка.Есть идеи?