List组件的initialIndex属性设置不生效

创建自定义菜单时,MenuBuilder使用List实现,给List设置initialIndex属性不生效。

HarmonyOS
2024-02-20 11:00:33
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
morning_dxm

Menu组件会自动内嵌Scroll组件,内部再放List组件时,List组件会将Scroll撑大,即List组件不会滚动,滚动的是默认的Scroll组件,因此设置initialIndex属性不生效。

可以给List组件设置列表高度,当List组件内容高度超过该高度时,List组件可以滚动,此时设置initialIndex便可以显示指定的菜单项。

示例代码

// xxx.ets 
@Entry 
@Component 
struct ListExample { 
  arr: string[] = ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12']; 
 
  build() { 
    Column() { 
      Scroll() { 
        List({ initialIndex: 5 }) { 
          ForEach(this.arr, (item: string) => { 
            ListItem(item) { 
              Row() { 
                Text(item) 
                  .fontColor(Color.Red) 
                  .fontSize(40) 
              } 
            } 
            .width('100%') 
            .height(100) //此处若未设置List高度,则initialIndex属性不生效 
            .border({ 
              width: 1, 
              color: Color.Black, 
              radius: 5 
            }) 
          }) 
        } 
        .height(400) 
        .alignListItem(ListItemAlign.Center) 
      } 
    } 
    .padding({ top: 10 }) 
  } 
}
分享
微博
QQ
微信
回复
2024-02-20 20:00:10
相关问题
通过WindowProperties设置属性生效
824浏览 • 1回复 待解决
textfield截断属性生效
1456浏览 • 1回复 待解决
用数组变量控制组件属性生效
716浏览 • 1回复 待解决
ConstraintSize尺寸设置生效
1061浏览 • 1回复 待解决
容器组件onVisibleAreaChange生效
622浏览 • 1回复 待解决
Web组件onKeyEvent键盘事件生效
740浏览 • 1回复 待解决
在嵌套组件中Scroll生效
878浏览 • 1回复 待解决
如何动态设置组件属性
374浏览 • 1回复 待解决
Web组件domStorageAccess属性设置
1104浏览 • 1回复 待解决
list-item 根据boolean属性 动态设置class
3431浏览 • 1回复 待解决
组件设置visibility属性回调
47浏览 • 1回复 待解决
js如何把list组件设置为横向
2571浏览 • 1回复 待解决
List组件如何设置多列
1021浏览 • 1回复 待解决
List组件如何设置两端渐变效果
815浏览 • 1回复 待解决