Skip to content

类: ShopWin

橱窗,容器 可以作为列表的一个item, 单独作为控件的容器

示例

ts
//1. 橱窗的使用参考ListView
//2. 容器的使用
//  定义橱窗的布局
class ShopWinDemo extends LM.ShopWin{
       init(): void {
           super.init()
           // 获取传入参数 awake(obj) 方法被调用后会这个方法会自动执行
           let num = this.params['num']
           let text = new LM.TextView();
           text.w = 400
           text.h = 50
           text.fontSize = 28
           text.fontColor = "#ff0000";
           text.text = num 
           text.click( () => {
               console.log("点击")
           })
           this.addChild(text);
           this.backgroundColor = "#FFFFFF"
       }
   }
   let shopWin = new ShopWinDemo()
   shopWin.awake(
   {  
       num:"yishui"
   )

继承

构造函数

构造函数

new ShopWin(params?, uiParams?): ShopWin

参数

params?
uiParams?

any

返回

ShopWin

重写了

UIBaseView.constructor

属性

属性类型描述

alias

string

别名 用于标识/获取组件

示例

ts
let img = new LM.ImgView()
// 给控件起一个名字
img.alias = "img01"

alpha

number

对象的透明度

Range

示例

let img = new LM.ImgView()
// 修改透明度
img.alpha = 100

backgroundColor

string

背景色

示例

ts
let img = new LM.ImgView()
// 修改控件的背景色
img.backgroundColor = "#FF0000"

h

number

已被弃用

自v1.3.0起废弃,请使用新的height 对象的宽度 宽高都被设置时才会生效

示例

obj.h = 100

height

number

容器高度(不建议直接使用)

isPenetrable

boolean

是否可穿透 默认可穿透 当使用Container创建父子级关系时 需要把自己穿透都打开才能触发到Container的点击事件

itemIndex

number

获取当前橱窗在泳道列表中的索引

mediator

any

shopwin的容器类,包含了shopwin的所有内部数值事件处理和ui事件处理

示例

ts
this.setVar({....},this.mediator)

mouseThrough

boolean

已被弃用

自v1.3.0起废弃,请使用新的 isPenetrable 是否可穿透 默认可穿透 当使用Container创建父子级关系时 需要把自己穿透都打开才能触发到Container的点击事件

params

any

传入参数

scaleX

number

x轴缩放

Range

scaleY

number

y轴缩放

Range

sceneManager

any

获取父级对象(创建橱窗的scene 或者 shopwin)

示例

ts
// 获取父级别对象后可以直接调用父级别对象的方法
const scene = this.sceneManager
scene.XXX()

touchEable

boolean

已被弃用

自v1.3.0起废弃,请使用新的touchEnabled 是否可点击(默认可点击)

touchEnabled

boolean

是否可点击(默认可点击)

visible

boolean

组件是否可见

示例

ts
let img = new LM.ImgView()
// 隐藏该控件
img.visible = false

w

number

已被弃用

自v1.3.0起废弃,请使用新的width 对象的宽度 宽高都被设置时才会生效

示例

obj.w = 100

width

number

容器宽度(不建议直接使用)

worldX

number

对象的全局x坐标 (建议不要频繁设置获取,相较于x比较耗性能)

worldY

number

对象的全局y坐标 (建议不要频繁设置获取,相较于y比较耗性能)

x

number

对象的x坐标

示例

obj.x = 100

y

number

对象的y坐标

示例

obj.y = 100

z

number

对象的层级

示例

let img = new LM.ImgView()
this.addChild(img) //注意:需要先添加到父容器后再设置层级,否则层级设置无效。
img.z = 100

zoomCenterX

number

縮放中心点x 默认为0

Range

zoomCenterY

number

縮放中心点y 默认为0

Range

zoomX

number

x轴缩放

Range

zoomY

number

y轴缩放

Range

方法

addChild()

addChild<T>(child): void

添加子对象

类型参数

T

T extends UIBaseView

参数

child

T

返回

void

重写了

UIBaseView.addChild


awake()

awake(params): void

橱窗单独作为容器使用的时候,调用此方法,把参数传入橱窗

参数

params

any

返回

void


beforeDestroy()

beforeDestroy(): void

当前橱窗即将销毁时执行一次

返回

void


click()

click(fn): any

参数

fn

Function

返回

any

已被弃用

自v1.3.0起废弃,请使用新的onClick 点击行为

示例

ts
let img = new LM.ImgView()
// 为这张图片注册了点击事件
img.click( 
   () => {
     console.log("点击了改控件")
   }
)

继承自

UIBaseView.click


dispose()

dispose(): void

销毁组件

返回

void

继承自

UIBaseView.dispose


getConstData()

getConstData(): any

获取常量库数据 (这是引用传递 使用前请一定要进行深拷贝 否则会影响常量库原有值)

返回

any

示例

ts
let data = this.getConstData();

getControlByAlias()

getControlByAlias(alias): UIBaseView

根据控件别名获取控件

参数

alias

string

返回

UIBaseView

示例

ts
let text = this.getControlByAlias('text1')

getParent()

getParent(): UIBaseView

获取父级

返回

UIBaseView

继承自

UIBaseView.getParent


getSaveData()

getSaveData(): any

获取组件的存档信息

返回

any

继承自

UIBaseView.getSaveData


getValue()

getValue(path): any

获取数据(同scene)

参数

path

string

返回

any


init()

init(): void

返回

void


onClick()

onClick(fn): any

点击行为

参数

fn

Function

返回

any

示例

ts
let img = new LM.ImgView()
// 为这张图片注册了点击事件
img.onClick( 
   () => {
     console.log("点击了改控件")
   }
)

继承自

UIBaseView.onClick


onTouchCancel()

onTouchCancel(fn): any

鼠标移出

参数

fn

Function

返回

any

示例

ts
let img = new LM.ImgView()
// 注册了移出事件
img.touchOut(()=>{console.log("移出")})

继承自

UIBaseView.onTouchCancel


onTouchDown()

onTouchDown(fn): any

按下行为

参数

fn

Function

返回

any

示例

ts
let text = new LM.TextView()
// 注册了按下事件
text.onTouchDown(()=>{console.log("按下")})

继承自

UIBaseView.onTouchDown


onTouchMove()

onTouchMove(fn): any

鼠标移动行为

参数

fn

Function

返回

any

示例

ts
let text = new LM.TextView()
// 注册了移动事件
text.onTouchMove(()=>{console.log("移动了")})

继承自

UIBaseView.onTouchMove


onTouchUp()

onTouchUp(fn): any

抬起行为

参数

fn

Function

返回

any

示例

ts
let img = new LM.ImgView()
// 注册了抬起事件
img.onTouchUp(()=>{console.log("抬起")})

继承自

UIBaseView.onTouchUp


reDraw()

reDraw(): void

泳道数据刷新时 会执行对应修改橱窗的reDraw方法

返回

void


removeFromParent()

removeFromParent(): void

从父级移除

返回

void

继承自

UIBaseView.removeFromParent


setValue()

setValue(path, data): any

设置数据(同scene)

参数

path

string

data

any

返回

any


touchCancel()

touchCancel(fn): any

参数

fn

Function

返回

any

已被弃用

自v1.3.0起废弃,请使用新的onTouchCancel 鼠标移出

示例

ts
let img = new LM.ImgView()
// 注册了移出事件
img.touchOut(()=>{console.log("移出")})

继承自

UIBaseView.touchCancel


touchDown()

touchDown(fn): any

参数

fn

Function

返回

any

已被弃用

自v1.3.0起废弃,请使用新的onTouchDown 按下行为

示例

ts
let text = new LM.TextView()
// 注册了按下事件
text.touchDown(()=>{console.log("按下")})

继承自

UIBaseView.touchDown


touchMove()

touchMove(fn): any

参数

fn

Function

返回

any

已被弃用

自v1.3.0起废弃,请使用新的onTouchMove 鼠标移动行为

示例

ts
let text = new LM.TextView()
// 注册了移动事件
text.touchMove(()=>{console.log("移动了")})

继承自

UIBaseView.touchMove


touchUp()

touchUp(fn): any

参数

fn

Function

返回

any

已被弃用

自v1.3.0起废弃,请使用新的onTouchUp 抬起行为

示例

ts
let img = new LM.ImgView()
// 注册了抬起事件
img.touchUp(()=>{console.log("抬起")})

继承自

UIBaseView.touchUp


update()

update(): void

橱窗循环更新 注:重写此方法时,需要在super.update()之后执行,否则会导致部分组件失效。

返回

void

示例

ts
update(){
    super.update()
    // 自定义代码
}