• Delphi XE5 android toast


    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.
    View Code


    使用方法:  短提示 Toast(s)    长时间提示:      Toast(s,LongToast);

    如图:

  • 相关阅读:
    Lucence_Curd
    Lucence
    SpringMvc文件上传
    SpringMvc接收参数
    出现No qualifying bean of type [com.*.*.dao.InfoDao] found for :错误
    内连接、左外连接、右外连接、交叉连接区别
    html基础
    Java基础阶段综合练习
    java基础MySQL
    java基础IO删除文件夹文件
  • 原文地址:https://www.cnblogs.com/nywh2008/p/3422210.html
Copyright © 2020-2023  润新知