grid组件的scrollBar不支持自定义样式,如何解决

grid组件的scrollBar不支持自定义样式,如何解决

HarmonyOS
2024-07-24 10:46:52
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
走在河边捡到鱼

关于Grid组件的默认滑动条scrollBar,当前并不支持直接进行自定义样式的设置。然而,为满足用户对于滑动条样式的特定需求,我们建议采取一种替代方案:首先隐藏默认的滑动条,然后绑定一个ScrollBar组件,通过此方式来实现滑动条样式的自定义,以满足特定场景下的使用需求。

参考代码如下:

@Entry
@Component
struct Index {
  private scroller: Scroller = new Scroller()
  private arr: number[] = [];

  build() {
    Column() {
      Stack({ alignContent: Alignment.End }) {
        Grid(this.scroller) {
          ForEach(this.arr, (item: number) => {
            GridItem() {
              Text(item.toString())
                .width(100)
                .height(50)
                .backgroundColor('#3366CC')
                .borderRadius(15)
                .fontSize(16)
                .textAlign(TextAlign.Center)
            }
          })
        }
        .width('100%')
        .columnsTemplate("1fr 1fr 1fr")
        .columnsGap(5)
        .rowsGap(5)
        .scrollBar(BarState.Off)

        ScrollBar({ scroller: this.scroller, direction: ScrollBarDirection.Vertical, state: BarState.Auto }) {
          Text("A")
            .width(20)
            .height(50)
            .borderRadius(10)
            .backgroundColor('#C0C0C0')
        }.width(20).backgroundColor('#ededed')
      }
    }
  }

  aboutToAppear() {
    for (let i = 0; i < 100; i++) {
      this.arr.push(i)
    }
  }
}
分享
微博
QQ
微信
回复
2024-07-24 19:47:29
相关问题
Grid组件scrollBar是否支持自定义
2073浏览 • 1回复 待解决
CustomDialog不支持自定义动画
227浏览 • 2回复 待解决
HarmonyOS如何自定义视频组件样式
258浏览 • 1回复 待解决
如何自定义Video组件控制栏样式
2139浏览 • 1回复 待解决
鸿蒙组件toast自定义样式
8583浏览 • 1回复 待解决
web组件不支持localstorage
646浏览 • 1回复 待解决
如何自定义滚动条样式
364浏览 • 1回复 待解决
HarmonyOS 自定义Slider样式
148浏览 • 1回复 待解决
CounterComponent样式是否可以自定义
126浏览 • 1回复 待解决
Refresh组件不支持设置nestedScroll属性
1737浏览 • 1回复 待解决
Image组件不支持读入沙盒内图片
697浏览 • 1回复 待解决