结果:
1.分享文本不好使,原因不明。有大神了解的,请M我,在此十分感谢。
2.如果想支持图片编辑,将Action事件的Editable改为True。
相关资料:
官网地址:http://docwiki.embarcadero.com/RADStudio/XE7/en/Mobile_Tutorial:_Taking_and_Sharing_a_Picture,_and_Sharing_Text_(iOS_and_Android)
unit Unit1;
interface
uses
System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.StdCtrls,
FMX.Controls.Presentation, System.Actions, FMX.ActnList, FMX.Objects,
FMX.StdActns, FMX.MediaLibrary.Actions, FMX.ScrollBox, FMX.Memo;
type
TForm1 = class(TForm)
ToolBar1: TToolBar;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Image1: TImage;
ActionList1: TActionList;
TakePhotoFromCameraAction1: TTakePhotoFromCameraAction;
TakePhotoFromLibraryAction1: TTakePhotoFromLibraryAction;
ShowShareSheetAction1: TShowShareSheetAction;
Button4: TButton;
Memo1: TMemo;
ShowShareSheetAction2: TShowShareSheetAction;
procedure TakePhotoFromCameraAction1DidFinishTaking(Image: TBitmap);
procedure TakePhotoFromLibraryAction1DidFinishTaking(Image: TBitmap);
procedure ShowShareSheetAction1BeforeExecute(Sender: TObject);
procedure ShowShareSheetAction2BeforeExecute(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.fmx}
{$R *.NmXhdpiPh.fmx ANDROID}
//分享图片
procedure TForm1.ShowShareSheetAction1BeforeExecute(Sender: TObject);
begin
ShowShareSheetAction1.Bitmap.Assign(Image1.Bitmap);
end;
//分享文本
procedure TForm1.ShowShareSheetAction2BeforeExecute(Sender: TObject);
begin
ShowShareSheetAction1.TextMessage:= Memo1.Lines.Text;
end;
//调用相机
procedure TForm1.TakePhotoFromCameraAction1DidFinishTaking(Image: TBitmap);
begin
Image1.Bitmap.Assign(Image);
end;
//使用图片库
procedure TForm1.TakePhotoFromLibraryAction1DidFinishTaking(Image: TBitmap);
begin
Image1.Bitmap.Assign(Image);
end;
end.