2011-01-31 2 views
2

У меня есть ListActivity с ListView, заполненным onStart с данными из базы данных. Каждая строка представляет собой пользовательский вид. После заполнения ListView я хочу выбрать определенную строку и отредактировать ее (например, изменить фон).Получить представление ребенка из ListView в ListActivity

Если я пытаюсь getListView(). GetChildCount() после заполнения, я всегда получаю 0. Неужели я неправильно понимаю, как работает getChildCount, или я использовал его неправильно?

+0

Проверьте, что 'getCount()' возвращает, и если оно равно 0. – Aliostad

+0

Когда вы вызываете getChildCount? – adamp

ответ

0

Я не совсем уверен, что вы пытаетесь сделать, но если вы хотите, чтобы выбрать строку (нажмите на строку) и изменить цвет фона, это может работать:

getListView().setOnItemClickListener(new OnItemClickListener(){ 

        @Override 
        public void onItemClick(AdapterView<?> arg0, View arg1, 
          int arg2, long arg3) { 
         arg1.setBackgroundColor(Color.parseColor("#444444")); 

        }}); 

Если вы пытаясь делать программно по населению, вы должны переопределить свой адаптер списка и сделать это там.

+0

Прости, я не прояснился. Я пытаюсь сделать это программно. Я использую SimpleAdapter для заполнения списка. Как мне его переопределить? – AverageMarcus

+0

Игнорируйте это, я думаю, что я ответил на свой собственный комментарий. Я нашел это http://ykyuen.wordpress.com/2010/03/15/android-%E2%80%93-applying-alternate-row-color-in-listview-with-simpleadapter/, и, похоже, это то, что я после. :) – AverageMarcus

Смежные вопросы