Files
creator-collection-view/list-3x/assets/home/grid.ts
2025-12-07 20:00:23 +08:00

31 lines
958 B
TypeScript

import { _decorator, Component, Label, math, Node } from 'cc';
import { YXCollectionView } from '../lib/yx-collection-view';
import { GridLayout } from '../lib/grid-layout';
const { ccclass, property } = _decorator;
@ccclass('grid')
export class grid extends Component {
protected start(): void {
const listComp = this.node.getChildByName('list').getComponent(YXCollectionView)
listComp.numberOfItems = () => {
return 10000
}
listComp.cellForItemAt = (indexPath, collectionView) => {
const cell = collectionView.dequeueReusableCell(`cell`)
cell.getChildByName('label').getComponent(Label).string = `${indexPath}`
return cell
}
let layout = new GridLayout()
layout.horizontalSpacing = 20
layout.verticalSpacing = 20
layout.itemSize = new math.Size(150, 180)
listComp.layout = layout
listComp.reloadData()
}
}