HarmonyOS 鸿蒙Next 自定义菜单能否去掉圆角?
HarmonyOS 鸿蒙Next 自定义菜单能否去掉圆角?
我是想要这个下拉菜单直接宽度100%显示,并且变成直角,能和上方的显示效果一致,现在不知道怎么调
@Builder MenuBuilder() {
GridRow({ columns: 4 }) {
ForEach(this.yaowuArray, (item:string, index) => {
GridCol() {
Row() {
Text(item).fontSize(15).fontColor(this.currentIndex==index?Color.White:'#333333')
}
.backgroundColor(this.currentIndex==index?'#45C274':Color.White).borderRadius(10)
.width('100%')
.height(30)
.justifyContent(FlexAlign.Center)
.align(Alignment.Center)
.onClick(() => {
this.currentIndex=index;
})
}
})
}.width('100%')
}
下面的图片直接绑定了上面的菜单
Image($r('app.media.xia'))
.width(20)
.height(20)
.margin({ left: 5 })
.bindMenu(this.MenuBuilder)
更多关于HarmonyOS 鸿蒙Next 自定义菜单能否去掉圆角?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
去掉圆角效果可通过以下配置来实现: .bindMenu(this.MyMenu,{ borderRadius:0 }) 铺满屏幕目前没有相关的配置可以实现。
@Entry
@Component
struct sss{
yaowuArray:string[]=[‘1’,‘2’,‘3’,‘4’,‘5’,‘6’,‘7’,‘8’,‘9’,‘10’,‘11’,‘12’]
@Builder MenuBuilder() {
GridRow({ columns: 4 ,gutter:{x:2,y:4}}) {
ForEach(this.yaowuArray, (item:string, index) => {
GridCol() {
Row() {
Text(item).fontSize(15).fontColor(’#111111’)
}
.backgroundColor(Color.Red)
.borderRadius(10)
.width(‘100%’)
.height(30)
.justifyContent(FlexAlign.Center)
.align(Alignment.Center)
}
})
}
}
build() {
Column() {
Button(‘菜单’).bindMenu(this.MenuBuilder,{
borderRadius:borderRadiuses(0)
}
)
}
}
}
更多关于HarmonyOS 鸿蒙Next 自定义菜单能否去掉圆角?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
.bindMenu(this.MenuBuilder, {
borderRadius: 0,
})
100% 是不太行了,看样子是一定有间隔的
HarmonyOS 鸿蒙Next系统中,自定义菜单的圆角设计是系统UI风格的一部分,默认情况下是为了保持界面的一致性和美观性。要去掉自定义菜单的圆角,你需要直接修改系统的UI组件样式或者通过特定的API来实现这一需求。
具体步骤如下:
-
获取UI组件的引用:首先,你需要获取到自定义菜单的UI组件引用,这通常是通过XML布局文件或者编程方式实现的。
-
修改组件样式:接着,你可以尝试修改该组件的样式属性,比如
shape
、cornerRadius
等,将其设置为无圆角的状态。但请注意,鸿蒙系统的某些组件可能不支持直接修改这些属性。 -
自定义绘制:如果上述方法无法实现,你还可以考虑通过自定义绘制的方式来创建没有圆角的菜单项。这需要一定的图形绘制基础,并且可能需要重写组件的绘制方法。
-
系统限制:请注意,鸿蒙系统对UI的修改可能有一定的限制,以确保系统的稳定性和一致性。因此,在某些情况下,你可能无法完全去掉圆角。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html