当使用第三方应用程序通过意图扫描使用DELPHI XE7构建的ANDROID应用程序时,扫描意图完成后,TListview的位图图像在意图完成后消失(显示为空白)。关于为什么或如何修复的任何想法?
我不确定哪种代码与此类情况最相关(意图与我将图像添加到listviewitems的方式)。
for i := 0 to length(AllParts)-1 do
begin
AllParts[i].LItem_ADDED:=false;
LItem:=PartList.items.add;
LItem.Detail:= DetailCaption;
LItem.Text:=AllParts[i].ID;
LItem.ButtonText:=AllParts[i].REORDER_QTY;
LItem.Bitmap:=AddImage.MakeScreenshot;
end;
制作截图是delphi函数:
function TControl.MakeScreenshot: TBitmap;
var
SceneScale: Single;
begin
if Scene <> nil then
SceneScale := Scene.GetSceneScale
else
SceneScale := 1;
Result := TBitmap.Create(Round(Width * SceneScale), Round(Height * SceneScale));
Result.BitmapScale := SceneScale;
Result.Clear(0);
if Result.Canvas.BeginScene then
try
PaintTo(Result.Canvas, TRectF.Create(0, 0, Result.Width / SceneScale, Result.Height / SceneScale));
finally
Result.Canvas.EndScene;
end;
end;