Dynamic Loadfrom file image 在 Firemonkey Mobile 上提供访问权限

Dynamic Loadfrom file image is giving Access vailation on Firemonkey Mobile

我正在创建具有列表框和图像的演示应用程序。当我 运行ning 时,Phone 上的应用程序给我(使用 image1.loadfromfile('Path of Image'))分段 11 异常。我无法在 Phone 上显示在 运行 时间添加的图像。我正在使用下面的代码来动态加载图像。

procedure TForm1.Button1Click(Sender: TObject);
var
 item : TListBoxItem;
 img  : Timage;
begin
  item := TListBoxItem.Create(ListBox1);
  img := TImage.Create(item);
  with item do
  begin
    Text := 'Vikas';
    Height := 49;
    Selectable := False;
    StyleLookup := 'listboxitemnodetail';
    img.Align := TAlignLayout.Left;
   end;
    img.MultiResBitmap.Items[0].Bitmap.LoadFromFile('path image in .png format');
    item.AddObject(img); 
    listbox1.addobject(item);
end;

如何动态加载图片?

需要先调用img.MultiResBitmap.Add()方法才能访问img.MultiResBitmap.Items[0]:

Creates a new TCustomBitmapItem bitmap item and adds it to the Items array.

例如:

img.MultiResBitmap.Add;
// now you can use img.MultiResBitmap.Items[0] as needed...

或者:

var
  bmp: TFixedBitmapItem;
begin
  ...
  bmp := img.MultiResBitmap.Add;
  // use bmp as needed...
  ...
end;

如果您实际上不需要多分辨率图像,请改用 img.Bitmap 属性:

img.Bitmap.LoadFromFile(...);