vdata
23-10-2014, 11:11:21
Buenos días,
Anteriormente, con Delphi XE6, para cargar una imagen de la galería, utilizaba el siguiente código:
function TForm1.OnActivityResult(RequestCode, ResultCode: Integer; Data: JIntent): Boolean;
var
uri: Jnet_Uri;
bitmap: JBitmap;
surface: TBitmapSurface;
begin
TMessageManager.DefaultManager.Unsubscribe(TMessageResultNotification, FMessageSubscriptionID);
FMessageSubscriptionID := 0;
if Assigned(Data) then
begin
try
uri:=Data.getData;
bitmap := TJImages_Media.JavaClass.getBitmap(SharedActivity.getContentResolver, uri);
surface := TBitmapsurface.Create;
JBitMapToSurface(bitmap,surface);
// Error en Delphi XE7
//Image1.Bitmap.Assign(surface);
finally
surface.Free;
Result := true;
end;
end
else Result := false;
end;
Al actualitzar a Delphi XE7, el código ha dejado de funcionar, la línea Image1.Bitmap.Assign(Surface) da un error de class segment fault (11). ¿Qué puede haber cambiado en Delphi XE7?
Saludos!
Anteriormente, con Delphi XE6, para cargar una imagen de la galería, utilizaba el siguiente código:
function TForm1.OnActivityResult(RequestCode, ResultCode: Integer; Data: JIntent): Boolean;
var
uri: Jnet_Uri;
bitmap: JBitmap;
surface: TBitmapSurface;
begin
TMessageManager.DefaultManager.Unsubscribe(TMessageResultNotification, FMessageSubscriptionID);
FMessageSubscriptionID := 0;
if Assigned(Data) then
begin
try
uri:=Data.getData;
bitmap := TJImages_Media.JavaClass.getBitmap(SharedActivity.getContentResolver, uri);
surface := TBitmapsurface.Create;
JBitMapToSurface(bitmap,surface);
// Error en Delphi XE7
//Image1.Bitmap.Assign(surface);
finally
surface.Free;
Result := true;
end;
end
else Result := false;
end;
Al actualitzar a Delphi XE7, el código ha dejado de funcionar, la línea Image1.Bitmap.Assign(Surface) da un error de class segment fault (11). ¿Qué puede haber cambiado en Delphi XE7?
Saludos!