HarmonyOS 当Grid指定高度时,希望底部多滑动一些达到留有空余区域的效果

// GridExample.ets
@Entry
@Component
export struct GridExample {
  @State numbers1: String[] = ['0', '1', '2', '3', '4', '5', '6']
  @State numbers2: String[] = ['0', '1', '2', '3', '4', '5']
  layoutOptions1: GridLayoutOptions = {
    regularSize: [1, 1],
    onGetRectByIndex: (index: number) => {
      if (index == 0) {
        return [0, 0, 1, 1]
      } else if (index == 1) {
        return [0, 1, 2, 2]
      } else if (index == 2) {
        return [0, 3, 3, 3]
      } else if (index == 3) {
        return [3, 0, 3, 3]
      } else if (index == 4) {
        return [4, 3, 2, 2]
      } else {
        return [5, 5, 1, 1]
      }
    }
  }
  layoutOptions3: GridLayoutOptions = {
    regularSize: [1, 1],
    onGetRectByIndex: (index: number) => {
      if (index == 0) {
        return [0, 0, 1, 1]
      } else if (index == 1) {
        return [0, 1, 2, 2]
      } else if (index == 2) {
        return [0, 3, 3, 3]
      } else if (index == 3) {
        return [3, 0, 3, 3]
      } else if (index == 4) {
        return [4, 3, 2, 2]
      } else {
        return [5, 5, 1, 1]
      }
    }
  }

  build() {
    Column() {
      Grid() {
        ForEach(this.numbers1, (day: string) => {
          ForEach(this.numbers1, (day: string) => {
            GridItem() {
              Text(day)
                .fontSize(16)
                .backgroundColor(0xF9CF93)
                .width('100%')
                .height(50)
                .textAlign(TextAlign.Center)
            }
          }, (day: string) => day)
        }, (day: string) => day)
      }
      .padding({
        top: 4,
        bottom: 40
      })
      .height(200)
      .columnsTemplate('1fr 1fr 1fr 1fr')
      .columnsGap(10)
      .rowsGap(10)
      .width('90%')
      .backgroundColor(0xFAEEE0)
    }
    .width('100%')
    .height(200)
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65.
  • 66.
  • 67.
  • 68.
  • 69.
  • 70.
  • 71.
  • 72.
  • 73.
  • 74.
HarmonyOS
2024-12-25 13:37:11
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
superinsect

grid的规格是在滚动场景下若一个节点已经布局出来了,如果它有一部分在padding区域内,这块显示部分不会被裁剪。如果这个节点的起始位置在padding内,那grid不会布局这个节点。可以在页面底部放一个占一整行的GridItem,来达到相同的目的。

分享
微博
QQ
微信
回复
2024-12-25 15:59:10
相关问题
HarmonyOS 是否支持指定一些字体?
901浏览 • 1回复 待解决
cmake编译时候信息能不能一些
1114浏览 • 1回复 待解决
HarmonyOS 使用Navigation一些疑问
1489浏览 • 1回复 待解决
HarmonyOS Navigation转场动画一些思路
723浏览 • 1回复 待解决
HarmonyOS 关于VPN一些使用问题?
3079浏览 • 1回复 待解决
关于designWidth一些问题
1226浏览 • 1回复 待解决
HarmonyOS hiAppEvent一些相关问题咨询
662浏览 • 1回复 待解决
关于liteos,有一些疑惑
9930浏览 • 3回复 待解决
HarmonyOS 关于RdbStore操作一些疑问
944浏览 • 1回复 待解决
HarmonyOS 有关Video组件一些问题
946浏览 • 1回复 待解决
docker 线上使用一些问题
3305浏览 • 1回复 待解决
关于系统信息一些参数询问
1186浏览 • 1回复 待解决
一些帐号授权相关问题
9573浏览 • 2回复 待解决
关于快速修复一些问题。
1486浏览 • 1回复 待解决
关于鸿蒙BLE一些问题
5123浏览 • 1回复 待解决
HarmonyOS 咨询下Tab中一些写法
936浏览 • 1回复 待解决