0
誰能告訴我如何以編程方式在Delphi XE5-8的Android桌面上設置壁紙?
謝謝。如何設置Android壁紙?
誰能告訴我如何以編程方式在Delphi XE5-8的Android桌面上設置壁紙?
謝謝。如何設置Android壁紙?
由@LURD鏈接的複製和@FreeConsulting
這裏有一個方法來設置wallpaper.don't知道它是多麼正確或錯誤)。
動態壁紙是不是太大的不同,所以這是一個起點
使用Java2op生成所有壁紙類的德爾福橋文件。
新FMX poject
單位添加到您的使用條款連同:
窗體上放置如下: Button1的:TButton的; Image1:TImageViewer;
在設計時加載圖像到Image1中。並將Button1設置爲在下面。
代碼:
procedure TForm1.Button1Click(Sender: TObject);
Var
FWallpaperManager: JWallpaperManager;
Factoryoptions: JBitmapFactory_Options;
AScreenSize: TPoint;
WidthOfScreen, HeightOfScreen: Integer;
FFileToOpen: string;
begin
{Create a filename to save the image to}
FFiletoopen:= System.IOUtils.TPath.Combine(System.IOUtils.TPath.GetDocumentsPath, 'Thefile.jpg');
{Save the image}
Image1.Bitmap.SaveToFile(FFileToOpen);
{Create JBitmap options }
Factoryoptions:= TJBitmapFactory_Options.Create;
{Read up on these in the android API}
Factoryoptions.inJustDecodeBounds:= True;
Factoryoptions.inPreferQualityOverSpeed:= True;
Factoryoptions.inJustDecodeBounds:= False;
{Get the wallpaper manager instance}
FWallpaperManager:= TJWallpaperManager.Wrap((SharedActivityContext.GetSystemService
(TJContext.JavaClass.WALLPAPER_SERVICE) as ILocalObject).GetObjectID);
{Load the image we saved}
TheBitmaptoShow:= TJBitmapfactory.JavaClass.DecodeFile(StringToJString(FFiletoopen), FactoryOptions);
{Only change the wallpaper if the Bitmap loads}
if TheBitmaptoShow <> nil then begin
{Set the Wallpaper}
FWallpaperManager.SetBitmap(TheBitmaptoShow);
end;
end;
http://bit.ly/1FKFpGV –
參見[代碼段來設置設備壁紙在Delphi XE7 Firemonkey在Android(HTTP:// WWW。 fmxexpress.com/code-snippet-to-set-the-device-wallpaper-in-delphi-xe7-firemonkey-on-android/)。 –