20-10-2023, Saat: 00:31
Merhaba Delphi FMX Android projemde aşağıda görüldüğü üzere sunucudan JSon formatında verileri alıyorum ve listeliyorum tek sıkıntı yaşadığım konu ise öncesinde Timage nesnesine sunucudaki resmi yüklüyorum ve
Toggle Design Mod'da oluşturmuş olduğum Image3 nesnesine bu Timage nesnesindeki resmi yüklüyorum, bu durumda sürekli ayrı resim (en son kayıda ait resimler) yükleniyor bu sorunu nasıl aşabilirim yardımcı olur musunuz
Toggle Design Mod'da oluşturmuş olduğum Image3 nesnesine bu Timage nesnesindeki resmi yüklüyorum, bu durumda sürekli ayrı resim (en son kayıda ait resimler) yükleniyor bu sorunu nasıl aşabilirim yardımcı olur musunuz
function TForm1.LoadData(Aranan:String):Boolean;
var
i,j:Integer;
LItem: TListViewItem;
Parametre,Parametre1,Parametre2,Parametre3,Parametre4:TStringList;
donen:String;
jSubPar: TJSONPair;
jsonStringData,StokKodu,StokAdi : String;
JsonValue: TJSONValue;
jsonData,JSONObject ,musteriler: TJSONObject;
dataArray: TJSONArray;
dataItem: TJSONObject;
ID,CC_CODE,CC_NAME:String;
Begin
try
try
Result:=True;
Result:=True;
Parametre:=TStringList.Create;
Parametre.Clear;
Parametre.Add('function=PurchasePriceResearchHistory');
Parametre.Add('aranan='+Aranan);
donen:= GetUrlJson(HTTP_ADREES,'?function=','PurchasePriceResearchHistory',Parametre);
jsonData := TJSONObject.ParseJSONValue(TEncoding.UTF8.GetBytes(donen), 0) as TJSONObject;
jsonDataList := TList<TJSONObject>.Create;
try
dataArray :=jsonData.GetValue('Data') as TJSONArray;
if (dataArray.Count>0) then
Begin
dataArray.Items[0].TryGetValue('PURCHASE_PRICE_HISTORY_ID', ID);
dataArray.Items[0].TryGetValue('PRODUCT_CODE',CC_CODE);
dataArray.Items[0].TryGetValue('PRODUCT_NAME',CC_NAME);
for I := 0 to dataArray.Count - 1 do
begin
musteriler := dataArray.Get(i) as TJSONObject;
jsonDataList.Add(musteriler);
Inc(j);
end;
End;
j:=1;
ListView1.Items.Clear;
ListView1.BeginUpdate;
for I := 0 to dataArray.Count-1 do
Begin
musteriler:= (dataArray.Get(i) as TJSONObject);
Application.ProcessMessages;
LItem := ListView1.Items.Add;
LItem.Height:=70;
LItem.Tag:=musteriler.GetValue<Integer>('PURCHASE_PRICE_HISTORY_ID');
LItem.ButtonText:=musteriler.GetValue<String>('CUSTOMER_TITLE')+' '+musteriler.GetValue<String>('PRODUCT_NAME');
LItem.Detail:=musteriler.GetValue<String>('PRODUCT_NAME');
LItem.Text := musteriler.GetValue<String>('CUSTOMER_TITLE')+' - '+musteriler.GetValue<String>('PRODUCT_NAME') ;
TListItemText(LItem.Objects.FindDrawable('Text1')).SelectedTextColor:=TAlphaColorRec.Darkgreen;
TListItemText(LItem.Objects.FindDrawable('Text1')).Text:=musteriler.GetValue<String>('PRODUCT_NAME');
TListItemText(LItem.Objects.FindDrawable('Text2')).Text:=musteriler.GetValue<String>('CUSTOMER_TITLE');
TListItemText(LItem.Objects.FindDrawable('Text4')).Text:=musteriler.GetValue<String>('RECORD_DATE');
TListItemText(LItem.Objects.FindDrawable('Text5')).Text:='Oluşturma Tarihi';
LoadImageFromURL(Image2,SERVER_IMAGE_ADDRESS+musteriler.GetValue<String>('URL_PATH'));
TListItemImage(LItem.Objects.FindDrawable('Image3')).Bitmap:=Image2.Bitmap;
Inc(j);
End;
except
raise;
end;
finally
ListView1.EndUpdate;
end;
if j=0 then
Begin
ShowMessage('Listelenecek Data yok.!');
End else
Begin
End;
except on E: Exception do
end;
End;