10分钟制作制作炫酷Windows Android IOS Dialogs对话框FMX界面,带透明度,可以将提示的内容和问题任意分享至社交App
10分钟制作制作炫酷Windows Android IOS Dialogs对话框FMX界面
带透明度,可以将提示的内容和问题任意分享至社交App
一、先看效果:
二、怎么做的呢?步骤:
1、先用FMX Form临时窗体画UI界面(javaUI做的事情):
底层Layout给透明度:
这样布局:
注意layer层之间Bringfront和SendToBack属性,
画出这样的效果:
2、创建Frame(javaUI做的事情):
3、把你刚才在Form临时窗体中画的UI界面复制粘贴到上面的Frame(javaUI做的事情):
这样的效果:
4、Frame UI界面简单的点击事件控制界面显示规则(java前端做的事情):
// 几句话代码(见下面蓝色标注):
unit CustomDialogsSimple1;
interface
uses
System.SysUtils, System.Types, System.UITypes,
System.Classes, System.Variants, System.Actions,
FMX.Types, FMX.Graphics, FMX.Controls,
FMX.Forms, FMX.Dialogs, FMX.StdCtrls,
FMX.Edit, FMX.Effects, FMX.Controls.Presentation,
FMX.Objects, FMX.Layouts,
FMX.ScrollBox, FMX.Memo,
FMX.ActnList, FMX.StdActns,
FMX.Ani;
type
TframeCustomDialogsSimple1 = class(TFrame)
LayoutDiologTranslucent: TLayout;
RectDiologTranslucent: TRectangle;
RectDiolog: TRectangle;
RectDiologTitle: TRectangle;
lblDiologTitle: TLabel;
RectDiologToolbar: TRectangle;
GlowEffect1: TGlowEffect;
lblRectDiologContentTips: TLabel;
imgDiologTitle: TImage;
LayoutRectDiologContent: TLayout;
MemoTips: TMemo;
LayoutRectDiologContentTips: TLayout;
imgRectDiologContentTips: TImage;
RectBtnOk: TRectangle;
imgBtnOk: TImage;
lblBtnOk: TLabel;
RectBtnCancel: TRectangle;
imgBtnCancel: TImage;
lblBtnCancel: TLabel;
btnCancel: TRectangle;
btnOk: TRectangle;
RectDiologContentTips: TRectangle;
RectBtnHelpme: TRectangle;
imgBtnHelpme: TImage;
lblBtnHelpme: TLabel;
btnHelpme: TRectangle;
imgShare: TImage;
LayoutShare: TLayout;
RectShare: TRectangle;
RectBtnShareText: TRectangle;
imgBtnShareText: TImage;
lblBtnShareText: TLabel;
BtnShareText: TRectangle;
RectBtnShareTo: TRectangle;
imgBtnShareTo: TImage;
lblBtnShareTo: TLabel;
BtnShareTo: TRectangle;
LayoutShareText: TLayout;
MemoShareText: TMemo;
LayoutShareTextTips: TLayout;
RectShareTextTips: TRectangle;
imgShareTextTips: TImage;
lblShareTextTips: TLabel;
RectShareText: TRectangle;
lblRectShare: TLabel;
RectLayoutShare: TRectangle;
SpBtnShareTo: TSpeedButton;
procedure btnOkClick(Sender: TObject);
procedure btnCancelClick(Sender: TObject);
procedure btnHelpmeClick(Sender: TObject);
procedure BtnShareTextClick(Sender: TObject);
procedure BtnShareToClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
//FTips:string;
frameCustomDialogsSimple1:TframeCustomDialogsSimple1;
end;
type
TAProc<T> = reference to procedure(const Arg :T);
TAFunc<T,TResult> = reference to function(const Arg :T):T;
var FTips:string;
implementation
{$R *.fmx}
procedure TframeCustomDialogsSimple1.btnCancelClick(Sender: TObject);
var LAProc:TAProc<string>;
LAFunc:TAFunc<string,Boolean>;
begin
//MemoRectDiologContent.Lines.Add(' 你点了取消,你要做什么在你的继承代码中写匿名过程TAProc<T>或写匿名函数TAFunc<T>');
FTips:=sLineBreak+'你点了取消:'+sLineBreak
+' 你点了取消,你要做什么在你的继承代码中调用你写好的过程或函数';
end;
procedure TframeCustomDialogsSimple1.btnOkClick(Sender: TObject);
var LAProc:TAProc<string>;
LAFunc:TAFunc<string,Boolean>;
begin
//MemoRectDiologContent.Lines.Add(' 你点了确定,你要做什么在你的继承代码中写匿名过程TAProc<T>或写匿名函数TAFunc<T>');
FTips:=sLineBreak+'你点了确定:'+sLineBreak
+' 你点了取消,你要做什么在你的继承代码中调用你写好的过程或函数';
end;
procedure TframeCustomDialogsSimple1.btnHelpmeClick(Sender: TObject);
begin
//MemoRectDiologContent.Lines.Add(' 你点了确定,你可以用此接口截屏分享给需要帮助您的人');
FTips:=sLineBreak+'你点了询问:'+sLineBreak
+' 你点了询问,你可以用此接口截屏分享给需要帮助您的人';
LayoutDiologTranslucent.Visible:=true;
RectDiolog.Visible:=false;
LayoutShare.BringToFront;
LayoutShare.Visible:=true;
end;
procedure TframeCustomDialogsSimple1.BtnShareTextClick(Sender: TObject);
begin
LayoutShareText.Visible:=not(LayoutShareText.Visible);
end;
procedure TframeCustomDialogsSimple1.BtnShareToClick(Sender: TObject);
begin
LayoutShareText.Visible:=false;
LayoutShare.SendToBack;
LayoutShare.Visible:=false;
imgShare.Visible:=false;
LayoutDiologTranslucent.Visible:=true;
RectDiolog.Visible:=true;
end;
end.
5、将上述Frame界面拖入加载到你的APP应用窗体(javaUI做的事情)
6、写你的调用代码及逻辑代码(java后端开发做的事情):
按钮事件代码:
分享代码:
一次一个分享动作:图片和文字只能二选一(除非 你做了多个动作代码,被某个Action连续调用,或者将文字画到图片中去):
截屏代码:
大功告成!是不是很简单呀! ( 需要联系我QQ:584798030 )