沒有提升的錯誤,我在Android世界的是Android 4.4.2
相當一個新手,我跑下一情況
我創建這個代碼
//function
procedure LoadPictureFromResource(const ResName: string; out aImage: TImage);
var
aResource: TResourceStream;
begin
aResource := TResourceStream.Create(HInstance, ResName, RT_RCDATA);
try
aImage.Bitmap.LoadFromStream(aResource);
finally
aResource.DisposeOf;
end;
end;
....
//call function
FImage := TImage.Create(Self);
FImage.Parent := Self;
FImage.Align := TAlignLayout.Left;
FImage.Margins.Left := 6;
FImage.Margins.Top := 3;
FImage.Margins.Bottom := 3;
FImage.Margins.Right := 3;
FImage.Width := 64;
LoadPictureFromResource(resPicturesError, FImage);
顯然有程序的聲明參數中的錯誤
代替var或const或空使用
適用於Windows,但仍然是語法/邏輯錯誤
Android的調試模式 - 德爾福報告錯誤(該設備不回答任何與正常工作)段錯誤(11)
工作模式 - Delphi和設備不報告任何東西
Android不報告任何內容(錯誤是危險的) - 爲什麼?
對DisposeOf的調用沒有意義。 out參數是錯誤的,應該是按值傳遞的。 –
不,它是不同的代碼用於Windows版本,我知道是錯誤的,問題是不同的 – ceha
非常繁瑣,必須爲ARC和非ARC代碼。我沒有意識到這一點。無論如何,這是錯誤的。去掉它。您傳入對現有實例的引用。 –