使用delphi使用外部库打开图像

问题描述 投票:1回答:1

我使用Delphi 10 Seattle创建了Android应用程序。我存储了图像路径,然后我需要在原生Android图库中打开图像。我该如何实现此功能?

android delphi firemonkey delphi-10-seattle
1个回答
3
投票

你正在尝试做的Java相当于这个(基于open-an-image-using-uri-in-androids-default-gallery-image-viwer

Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse("file://" + "/sdcard/test.jpg"), "image/*");
startActivity(intent);

因此,如果我们使用sending-android-intents-from-delphi-part-2作为指南将其转换为Delphi,我们应该得到如下所示的代码:

var
  Data: Jnet_Uri;
  Intent: JIntent;
begin
  Intent := TJIntent.Create;
  Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);
  Data := TJnet_Uri.JavaClass.parse(StringToJString('file://' + '/sdcard/test.jpg'));
  Intent.setDataAndType(Data, StringToJString('image/*'));
  SharedActivity.startActivity(Intent);
end;

当然最好使用

System.IOUtils.TPath.Combine(Path, Filename)代替上面示例代码的'/sdcard/test.jpg'部分。

© www.soinside.com 2019 - 2024. All rights reserved.