HarmonyOS 设置宽度为100%则左右边距失效

Row() {
  Image($r('app.media.ic_main_search'))
    .height(16)
    .width(16)
    .margin({
      left: 12
    })
}
.margin({
  top: 6,
  bottom: 6,
  left: 12,
  right: 12,
})
.backgroundColor('#FFFFFF')
.borderRadius(50)
.height(32)
.width('100%')

如果我设置宽度为100%则左右边距失效,这种情况只能在外部套一层来实现么?

HarmonyOS
1天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
zxjiu

width(‘100%’) 的时候,margin 左右的设置就会失效。 可以写成这样

.width(px2vp(this.screenWidthPx-60)).height(80)
  .margin({
    top: "15px",
    left: "30px",
    right: "30px",
  })

this.screenWidthPx 这样取值

@State screenWidthPx: number = 0;

aboutToAppear(): void {
  this.screenWidthPx = display.getDefaultDisplaySync().width;
  console.info(this.screenWidthPx.toString());
}

左右margin的值一样的话还可以这样写

.width('calc(100% - 60px)').height(80)
  .margin({
    top: "15px"
  })
分享
微博
QQ
微信
回复
1天前
相关问题
HarmonyOS 宽度100%,左右间距不生效
40浏览 • 1回复 待解决
HarmonyOS 宽度100% margin左右不生效
93浏览 • 1回复 待解决
HarmonyOS 子控件设置宽度100%问题
28浏览 • 1回复 待解决
List如何设置分割线左右的边
540浏览 • 1回复 待解决
控件enabled设置false时,hover失效
2284浏览 • 1回复 待解决
HarmonyOS 设置userAgent失效
31浏览 • 1回复 待解决