AutoLua2AutoLua2
  • 快速开始
  • 介绍
  • 自动化API

    • 图色相关
    • 模拟相关
    • 节点相关
    • 界面相关
    • 其他
  • 界面API
  • 快速开始
  • 介绍
  • 自动化API

    • 图色相关
    • 模拟相关
    • 节点相关
    • 界面相关
    • 其他
  • 界面API
  • 自动化API

    • 图色相关

      • 全局
      • Bitmap
      • FindOrder
    • 模拟相关

      • 全局
      • Pointer
      • KeyCode
    • 节点相关

      • 全局
      • UiObject
      • UiSelector
    • 交互相关

      • 全局
      • UI
      • FloatView
      • FloatController
      • LayoutParams
      • LayoutParamsFlag
    • 其他
  • UI的API

    • 全局变量
    • 视图

      • View 类
      • window 类
      • Label 类
      • ImageButton 类
      • EditTextView 类
      • ScrollView 类
      • LinearLayout 类
      • Alert 类
      • Toast 类
      • Dialog 类
      • Switch 类
      • TabSegmentView 类
      • TableView 类
      • TableViewAdapter 类
      • TableViewAutoFitAdapter 类
      • CollectionView 类
      • CollectionViewAdapter 类
      • CollectionViewAutoFitAdapter 类
      • CollectionViewLayout 类
      • WaterfallView 类
      • WaterfallAdapter 类
      • WaterfallLayout 类
      • ViewPager 类
      • ViewPagerAdapter 类
    • 动画
    • 数据

      • Map 类
      • Array 类
      • Point 类
      • Size 类
      • Rect 类
      • Color 类
      • StyleString 类
    • 工具

      • Loading 类
      • Http 类
      • System 类
      • Timer 类
      • MBit 类
      • File 类
      • Application 类
      • Navigator 类
      • PreferenceUtils 类
      • TypeUtils 类
      • StringUtil 类
      • NetworkReachability 类
      • GlobalEvent 类
      • Clipboard 类
      • CornerManager 类
    • 枚举

      • ContentMode 枚举
      • TextAlign 枚举
      • BreakMode 枚举
      • FontStyle 枚举
      • UnderlineStyle 枚举
      • RepeatType 枚举
      • InterpolatorType 枚举
      • AnimType 枚举
      • EditTextViewInputMode 枚举
      • ReturnType 枚举
      • ScrollDirection 枚举
      • StatusBarStyle 枚举
      • RectCorner 枚举
      • LinearType 枚举
      • Gravity 枚举
      • MeasurementType 枚举
      • ValueType 枚举
      • GradientType 枚举
      • TabSegmentAlignment 枚举
      • NetworkState 枚举
      • CachePolicy 枚举
      • ResponseKey 枚举
      • ErrorKey 枚举
      • EncType 枚举

window 类

继承 View

特定的全局视图变量,作为当前lua界面的根视图

在单个lua虚拟机中全局唯一,作为根布局,用来承载所有的子视图。 window的生命周期方法调用顺序为: 1.sizeChanged 2.viewAppear 3.viewDisappear 4.onDestroy

@note 不可修改该全局视图变量。
⚠️由于Android布局系统原因,建议不要使用绝对值进行相关布局,而使用相对布局(Match Parent, Wrap Content, margin, Gravity)。大多数情况下,需要使用绝对值的布局可以被相对布局代替,比如需要在距离屏幕底部100的位置有个按钮,可使用:Gravity.Bottom加marginBottom来实现。 如果一定需要获取屏幕高度,并根据此高度布局,使用window:height()获取高度,并监听window:sizeChanged(function),在屏幕尺寸改变时,改变相应视图

变量

_priveta_class_name : string

name : string

方法

viewAppear

设置页面显示时回调

该方法会在页面进入时调用,当该页面为APP展示页面时,APP切前后台也会触发。

 回调格式:
	 ``` 
	 function() 
	 end
	```

@note 建议写在lua代码的最后,这样所有的调用方法都已加载

参数

  • callback : function()

返回值

  • : window

viewDisappear

设置页面隐藏时回调

该方法会在页面退出时调用,当该页面为APP展示页面时,APP切前后台也会触发。

 回调格式:
	 ``` 
	 function() 
	 end
	```

@note 建议写在lua代码的最后,这样所有的调用方法都已加载

参数

  • callback : function()

返回值

  • : window

sizeChanged

设置页面宽或高变化时的回调

 回调格式:
	 ``` 
	 function(number w,number h) 
	 	 ---w:页面宽度 
	 	 ---h:页面高度 
	 end
	```

参数

  • callback : function(w|h)

返回值

  • : window

onDestroy

设置页面销毁前的回调

当业务需要在业务销毁前处理某些事务的时候,可以使用该方法设置回调。

 回调格式:
	 ``` 
	 function() 
	 end
	``` 

参数

  • callback : function()

返回值

  • : window

getExtra

获取在原生业务中为lua设置的拓展参数

该方法可用的前提是在唤起lua业务前,调用lua instance的setExtraData方法将业务需要的拓展数据赋值给window,供lua业务在执行时获取

返回值

  • 返回一个封装有各类参数的字典 : Map

getLuaVersion

获取当前加载的lua业务的版本号,版本号0为预埋包

获取lua业务版本的方法,跟SDK没有关系,只跟业务的定义有关

@note 需要在加载lua处去给window赋值,调用instance的setLuaVersion方法赋值。

返回值

  • : string

getLuaSource

获取当前加载的lua文件来源

获取当前加载的lua文件来源,通过URL加载的返回URL,通过lua文件加载的返回文件名

返回值

  • 文件来源 : string

keyboardShowing

设置监听键盘的展示和隐藏

该方法监听键盘的状态,展示或隐藏通过返回值标记,并且提供键盘高度以供业务方处理。

 回调格式:
	 ``` 
	 function(boolean isShowing,number keyboardHeight) 
	 	 ---isShowing:展示or隐藏 
	 	 ---keyBoardHeight:键盘高度,隐藏时为0 
	 end
	```

参数

  • callback : function(isShowing|keyboardHeight)

返回值

  • : window

i_keyBoardFrameChangeCallback

键盘frame改变回调

该方法监听切换键盘(第三方键盘或是系统键盘)的高度变化

 回调格式:
	 ``` 
	 function(number oldHeight,number newHeight) 
	 	 ---oldHeight:变化前键盘高度 
	 	 ---newHeight:变化后键盘高度 
	 end
	```

@note ios支持,android空实现

参数

  • callback : function(oldHeight|newHeight)

返回值

  • : window

setPageColor

设置window的背景颜色

该方法是来设置window背景颜色

参数

  • pageColor : Color 需要设置的页面颜色

返回值

  • : window

statusBarHeight

获取电池栏(状态栏)高度

获取电池栏(状态栏)高度,两端都返回实际高度,在iOS端当隐藏状态栏时,返回0,此时需要结合需求,将状态栏展示后获取高度

@note 建议在非全屏,即展示状态栏的情况下使用,否则会返回0

返回值

  • : number

navBarHeight

获取导航条高度

获取导航条高度,两端都返回默认导航条高度

返回值

  • : number

tabBarHeight

获取tab bar高度

获取tab bar高度,android返回0,iOS返回实际高度

@note 在Android和iOS两端是不一样的

返回值

  • : number

homeBarHeight

获取home虚拟按键高度

获取home虚拟按键高度,Android返回虚拟按键高度(若有),iOS返回TabBar高度

@note 建议在非全屏,即有虚拟按键时,使用该方法最为准确

返回值

  • : number

backKeyPressed

设置返回键监听方法

安卓中 Activity 或ViewGroup 中可用,Fragment中还不行

 回调格式:
	 ``` 
	 function() 
	 end
	```

@note 仅Android有效,IOS空实现 安卓原生端需要做如下处理: 1) Activity或ViewGroup中此方法可生效,Fragment中暂时还不会生效; 2) 在显示LuaView的Activity中 dispatchKeyEvent() 方法添加如下代码: if (event.getKeyCode() == KeyEvent.KEYCODE_BACK && event.getAction() != KeyEvent.ACTION_UP) { MLSInstance.dispatchKeyEvent(event);}

参数

  • callback : function()

返回值

  • : window

getStatusBarStyle

获取状态栏颜色样式

返回值

  • StatusBarStyle.default : StatusBarStyle or StatusBarStyle StatusBarStyle.Light

setStatusBarStyle

设置状态栏样式

在viewAppear中设置,需要在viewDisappear中设置回原始样式

@note 记得设置后在视图消失时置回设置前的样式

参数

  • style : StatusBarStyle StatusBarStyle.Default or StatusBarStyle.Light

返回值

  • : window

backKeyEnabled

是否执行返回到上一个页面的操作,默认值为true,当不传递参数时,是获取是否可以执行返回键操作的boolean值

@note 安卓支持,ios空实现

参数

  • isEnable : boolean 是否执行返回到上一个页面的操作,默认值为true

返回值

  • : window
Prev
View 类
Next
Label 类