HarmonyOS 如何实现listItem高度随内容自适应

list里的listItem的高度是由Text的行数动态展示的,单行文本和多行文本的高度不同。请问这种情况如何实现高度listItem的高度自适应。

HarmonyOS
2024-08-30 12:41:52
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zbw_apple

这边提供一个list自适应的demo,您看一下是否能解决您的问题。

@Entry 
@Component 
struct listDemoFirst { 
 private arr: string[] = ['0zkjsajlkhzxxxxxaskhfiu','1','2hsaifuhshjfxxxxxukfhkushvkushiahfuisyujag','3','4','5slkhfvuixxxxlansdkufyslfnsd','6','7','8','9xxxxhnakgcuahkucgyauis']; 
 @State sizeValue: string = ''; 
 
 build() { 
  Row() { 
   List() { 
    ForEach(this.arr, (item: string) => { 
     ListItem() { 
      Text(item) 
       .width('30%').height('auto').fontSize(16) 
       .border({ 
        width : 1 
       }) 
       .textAlign(TextAlign.Center).borderRadius(10).backgroundColor(0xFFFFFF) 
       .onAreaChange((oldValue: Area, newValue: Area)=>{ 
        console.log(newValue.height.toString()) 
        if (Number(newValue.height) > Number(this.sizeValue)) { 
         this.sizeValue = newValue.height.toString() 
        } 
       }) 
     } 
    }, (item: string) => item) 
   } 
   .listDirection(Axis.Horizontal) // 排列方向 
   .scrollBar(BarState.Auto) 
   .backgroundColor(Color.Gray) 
   .width('100%') 
   .height(this.sizeValue) 
  } 
  .width('100%') 
  .padding({ top: 5 }) 
 } 
}
分享
微博
QQ
微信
回复
2024-08-30 20:10:03
相关问题
HarmonyOS Grid高度根据内容自适应
1072浏览 • 1回复 待解决
HarmonyOS List高度根据内容自适应
1288浏览 • 1回复 待解决
HarmonyOS web的高度自适应内容高度
1572浏览 • 1回复 待解决
HarmonyOS Grid组件能否自适应内容高度?
902浏览 • 1回复 待解决
HarmonyOS 如何实现自适应web的高度
950浏览 • 1回复 待解决
List水平布局如何根据内容自适应高度
1825浏览 • 1回复 待解决
Grid组件如何实现高度自适应
4447浏览 • 1回复 待解决
Web组件如何实现高度自适应
1966浏览 • 1回复 待解决
HarmonyOS 高度自适应
1335浏览 • 1回复 待解决
HarmonyOS RichText自适应高度
1048浏览 • 1回复 待解决
HarmonyOS webview高度不能自适应
984浏览 • 1回复 待解决
HarmonyOS RichText能否自适应高度
818浏览 • 1回复 待解决
HarmonyOS RelativeContainer无法自适应高度
1512浏览 • 1回复 待解决
HarmonyOS Web高度自适应问题
1988浏览 • 1回复 待解决
HarmonyOS 高度自适应的问题
1323浏览 • 1回复 待解决
HarmonyOS RelativeContainer自适应高度相关
1043浏览 • 1回复 待解决
HarmonyOS GridItem自适应高度问题
1367浏览 • 1回复 待解决