mirror of
https://gitee.com/nomat/lcc-ui-sorting-group-demo.git
synced 2025-10-28 02:55:25 +00:00
添加动态修改功能
This commit is contained in:
@@ -67,7 +67,7 @@ UI.prototype.flushRendererCache = function(){
|
||||
}
|
||||
// console.log(`flushRendererCache ${rendererCache.length}`);
|
||||
for(let render of rendererCache){
|
||||
// console.log(`${render.node.name} render hash ${render.renderData.dataHash}`);
|
||||
// console.log(`${render.node.name} render hash ${render.renderPriority}`);
|
||||
render.fillBuffers(this);
|
||||
if(render.renderOpacity >= 0){
|
||||
updateOpacity(render.renderData, render.renderOpacity);
|
||||
|
||||
@@ -12,13 +12,37 @@ export class SortingGroup extends Component {
|
||||
* 排序层
|
||||
*/
|
||||
@type(Enum(SortingLayer))
|
||||
sortingLayer:SortingLayer = SortingLayer.DEFAULT;
|
||||
private _sortingLayer:SortingLayer = SortingLayer.DEFAULT;
|
||||
|
||||
/**
|
||||
* 排序层
|
||||
*/
|
||||
@type(Enum(SortingLayer))
|
||||
get sortingLayer(){
|
||||
return this._sortingLayer;
|
||||
}
|
||||
set sortingLayer(value:SortingLayer){
|
||||
this._sortingLayer = value;
|
||||
this._uiTransform.sortingPriority = Math.sign(this._sortingLayer) * (Math.abs(this._sortingLayer) * ORDER_IN_LAYER_MAX + this._orderInLayer);
|
||||
}
|
||||
|
||||
/**
|
||||
* 排序值
|
||||
*/
|
||||
@property({ type:CCFloat, min: 0, max : ORDER_IN_LAYER_MAX })
|
||||
private _orderInLayer:number = 0;
|
||||
|
||||
/**
|
||||
* 排序值
|
||||
*/
|
||||
@property({ type:CCFloat, min: 0, max : ORDER_IN_LAYER_MAX })
|
||||
orderInLayer:number = 0;
|
||||
get orderInLayer(){
|
||||
return this._orderInLayer;
|
||||
}
|
||||
set orderInLayer(value:number){
|
||||
this._orderInLayer = value;
|
||||
this._uiTransform.sortingPriority = Math.sign(this._sortingLayer) * (Math.abs(this._sortingLayer) * ORDER_IN_LAYER_MAX + this._orderInLayer);
|
||||
}
|
||||
|
||||
private _uiTransform:UITransform = null;
|
||||
|
||||
@@ -27,7 +51,7 @@ export class SortingGroup extends Component {
|
||||
}
|
||||
|
||||
onEnable(){
|
||||
this._uiTransform.sortingPriority = Math.sign(this.sortingLayer) * (Math.abs(this.sortingLayer) * ORDER_IN_LAYER_MAX + this.orderInLayer);
|
||||
this._uiTransform.sortingPriority = Math.sign(this._sortingLayer) * (Math.abs(this._sortingLayer) * ORDER_IN_LAYER_MAX + this._orderInLayer);
|
||||
this._uiTransform.sortingEnabled = true;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user