Вы должны использовать собственный класс, чтобы создать адаптер для списка, и этот класс должен расширить класс BaseAdapter
. В этом классе вы должны реализовать следующие методы:
public int getCount()
public Object getItem(int position)
public long getItemId(int position)
public View getView(int position, View convertView, ViewGroup parent)
В последнем, вы можете получить LayoutInflater
, и нагрузка вид от .xml
. В этом .xml
вы можете определить макет одной строки. Вот пример одного из моих проектов:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// menuItems is an ArrayList of Strings
final String menu = menuItems.get(position);
LayoutInflater inflater = (LayoutInflater) parent.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.layout.list_mainmenu_row, null);
TextView menuText = (TextView) view.findViewById(R.id.menuListRow_menuItem);
menuText.setText(menu);
return view;
}
Спасибо, но то, что я хотел бы знать, как настроить ListView иметь кнопку и отличительные цвета, если не сделать ImageView или если есть компонент андроид. – Eragonz91