Delphi XE5 android toast
16lz
2021-01-23
unit Android.JNI.Toast;// Java bridge class imported by hand by Brian Long (http://blong.com)interface{$IFDEF ANDROID}uses Androidapi.JNIBridge, Androidapi.JNI.JavaTypes, Androidapi.JNI.GraphicsContentViewText;{$ENDIF}{$IFDEF ANDROID}type TToastLength = (LongToast, ShortToast); JToast = interface; JToastClass = interface(JObjectClass) ['{69E2D233-B9D3-4F3E-B882-474C8E1D50E9}'] { Property methods } function _GetLENGTH_LONG: Integer; cdecl; function _GetLENGTH_SHORT: Integer; cdecl; { Methods } function init(context: JContext): JToast; cdecl; overload; function makeText(context: JContext; text: JCharSequence; duration: Integer) : JToast; cdecl; { Properties } property LENGTH_LONG: Integer read _GetLENGTH_LONG; property LENGTH_SHORT: Integer read _GetLENGTH_SHORT; end; [JavaSignature('android/widget/Toast')] JToast = interface(JObject) ['{FD81CC32-BFBC-4838-8893-9DD01DE47B00}'] { Methods } procedure cancel; cdecl; function getDuration: Integer; cdecl; function getGravity: Integer; cdecl; function getHorizontalMargin: Single; cdecl; function getVerticalMargin: Single; cdecl; function getView: JView; cdecl; function getXOffset: Integer; cdecl; function getYOffset: Integer; cdecl; procedure setDuration(value: Integer); cdecl; procedure setGravity(gravity, xOffset, yOffset: Integer); cdecl; procedure setMargin(horizontalMargin, verticalMargin: Single); cdecl; procedure setText(s: JCharSequence); cdecl; procedure setView(view: JView); cdecl; procedure show; cdecl; end; TJToast = class(TJavaGenericImport<JToastClass, JToast>) end;procedure Toast(const Msg: string; duration: TToastLength = ShortToast);{$ENDIF}implementation{$IFDEF ANDROID}uses FMX.Helpers.Android;procedure Toast(const Msg: string; duration: TToastLength);var ToastLength: Integer;begin if duration = ShortToast then ToastLength := TJToast.JavaClass.LENGTH_SHORT else ToastLength := TJToast.JavaClass.LENGTH_LONG; CallInUiThread( procedure begin TJToast.JavaClass.makeText(SharedActivityContext, StrToJCharSequence(Msg), ToastLength).show end);end;{$ENDIF}end.
使用方法:短提示 Toast(s) 长时间提示: Toast(s,LongToast);
更多相关文章
- 【Android】播放提示音
- android onSaveInstanceState的使用方法
- android使用自定义标题时提示“you cannot combine custom title
- Android lint 检查提示汇总
- Android Studio 提示错误:No IDEA annotations attached to the J
- Android Studio 小提示,新建Activity
- Android1.6好使,但是2.1 2.2遇到问题,不好使。提示emulator-5554
- Android项目运行提示
- Android JNI使用方法