ios delphi url firemonkey timage

FireMonkey iOS RAD Studio XE2-Mostrar imagen en el formulario cargado desde la URL



delphi timage (2)

¿Es posible colocar un TImage en un formulario FMX para iOS y cargar una imagen (jpg) desde una URL en este TImage para que se muestre en la aplicación iOS?

Lo he intentado sin éxito. Cualquier sugerencia o punto en la dirección correcta es apreciada.


Coloque un TButton, TImageControl y TIdHttp en un formulario Firemonkey y este código bajará una imagen de la web:

procedure TForm1.btnReadWebImgClick(Sender: TObject); begin ReadWebImage(''http://www.gravatar.com/avatar/5af5f8c5f88c6c237745e9472a31410f?s=32&d=identicon&r=PG''); end; procedure TForm1.ReadWebImage(imgAddress: string); var memStream: TMemoryStream; begin memStream := TMemoryStream.Create; try idhttp1.Get (imgAddress,memStream); except ShowMessage(''Image not found at:''+imgAddress); memStream.Free; exit; end; try memStream.Position := 0; ImageControl1.Bitmap.LoadFromStream(memStream); finally memStream.Free; end; end;


La respuesta funciona con un poco de congelación. Cargo 4 imágenes en un bucle. Cuando presiono el botón, el programa se congela para descargar las imágenes, la barra de progreso no funciona y, si se descargan, continúa perfectamente. Para 4 imágenes congelar durante 1 seg. Para 50 es un "sin conexión" o "programa incorrecto". Este es el código.

procedure TForm1.SpeedButton1Click(Sender: TObject); var i: Integer; Stream: TMemoryStream; imgAddress: string; begin ProgressBar1.Min := 0; ProgressBar1.Max := Table1.RecordCount; for i := 1 to Table1.RecordCount do begin ProgressBar1.Value := i; imgAddress := VirtualTable1.FieldByName(''flyer'').AsString; Stream := TMemoryStream.Create; idhttp1.Get (imgAddress,Stream); try Stream.Position := 0; Table1.Edit; TBlobField(Table1.FieldByName(''image'')).LoadFromStream(Stream); Table1.Post; finally Stream.Free; end; Table1.Next; end; Table1.First; end;