"How can detect which element has been clicked or selected? Very frustrating to find out just simple thing."
1.- select structure like.: TlistView1/ItemAppearance/Item
2.- in object Inspector, change Appearance to DynamicAppearance.
3.- in object Inspector, add a new TTextObjectAppearance, change name to "MUV_HELY" or something.
4.- Add item
ListView1.Items.Add.Objects.FindObjectT<TListItemText>('MUV_HELY').Text:= //Your record value, or something. /*string all the time*/
/// With image ///
> ListView1.Items.Add.Objects.FindObjectT<TListItemImage>('IMAGE01').Bitmap := FMX.Graphics.TBitmap.CreateFromFile('.\Jelleg\List\'+Format('%.4d',[AdatSor.GYARTASISZAM])+'.bmp');
'.\' -> means your application Release folder. where your *.exe is.
'Format('%.4d',[AdatSor.GYARTASISZAM])' -> means for these example, in my database stored file name, what i have to call from file. My database value 1 and 2, but in file name I need to call 0001.bmp and 0002.bmp.
5.-Read back item
procedure TMainMenu.ListView1Change(Sender: TObject);
begin
if ListView1.Selected<>nil then ShowMessage(TAppearanceListViewItem(ListView1.Selected).Objects.FindObjectT<TListItemText>('MUV_HELY').Text);
end;
If you change the selected item with keyboard (up, down, left, right), then you will get back the selected value, without clicking on it.