Delphi XE5 Android : how to make each listview item have its own template?

13,230

Yes there is a way. I make it by using these two methods. The CreateItem method is where you put the components you want in the listitem.

procedure TForm1.CreateItem;
var
edit1:TClearingEdit;
editCalendar1:TCustomCalendarEdit;
begin
  edit1:= TClearingEdit.Create(Self);
  edit1.Parent := fItem;
  edit1.Align := TAlignLayout.alClient;
  edit1.Text := 'Blabla';
  edit1.OnChange := actEdit1OnChange;

  editCalendar1 := TCalendarEdit.Create(Self);
  editCalendar1.Parent := fItem;
  editCalendar1.Align := TAlignLayout.alRight;
  editCalendar1.Width := 90;
  editCalendar1.Date := Date;
  editCalendar1.OnChange := actEditCalOnChange;
end;

procedure TForm1.CreateListItem;
begin
  fItem:= TListBoxItem.Create(your_listbox);
  fItem.Parent := your_listbox; //Here you put the ListBox as a parent
  fItem.Align := TAlignLayout.alTop;
  fItem.Text := '';
  fItem.Height := 50;

  CreateItem;
end;

To add a custom item to the list just call the CreateListItem method! Next to this I use the OnChange method to receive data here is an example:

procedure TForm1.actEditCalOnChange(Sender: TObject);
begin
  label1.text := TCalendarEdit(Sender).Text;
end;

procedure TForm1.actEdit1OnChange(Sender: TObject);
begin
  label2.text := TClearingEdit(Sender).Text;
end;
Share:
13,230
Adib Faramarzi
Author by

Adib Faramarzi

Software Engineer experienced in Object-Oriented Design, Architecture Analysis and UI/UX Design with a keen interest in Android Application Development. Responsible for creating multiple public android applications, which can be viewed on the LinkedIn profile. Key Skills: Agile Methodologies Professional Android Development Clean Architecture , MVP and MVP patterns Multi-Module structure RxJava Git Teamwork Kotlin

Updated on June 04, 2022

Comments

  • Adib Faramarzi
    Adib Faramarzi almost 2 years

    Is there a way to make the TListView of Delphi to behave like actual ListView in android? for example each item of the list has its own "View" and in that view can be multiple other views(components) like multiple text boxes and check boxes and ...?

    enter image description here