欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 社会 > 【HarmonyOS 5.0】实现带圆角的梯形

【HarmonyOS 5.0】实现带圆角的梯形

2024/12/22 9:03:07 来源:https://blog.csdn.net/xliang111/article/details/144293769  浏览:    关键词:【HarmonyOS 5.0】实现带圆角的梯形

【需求】
请添加图片描述
【问题描述】

  1. 同事做鸿蒙化需求时,被要求实现如上图效果,没有UI图,安卓同事也找不到对应素材。
  2. 只能同事自己想办发解决,找我问能不能做这效果,刚好前段时间帮另一个同事实现三角形效果,在三角型的基础上加上圆角效果,要就能实现

【解决方案】

  1. 使用clipShape,传入PathShape,编写commands就能实现

【代码】

import { PathShape } from '@kit.ArkUI'@Entry
@Component
struct ClipShapeCircle {build() {Column() {Row() {Row() {Text('主标题').fontColor(Color.White).height(60).padding({ left: 20 })}Row() {Text('副标题').fontColor(Color.White).margin({ left: 50 })}.backgroundColor(Color.Green).width(200).height(50).clipShape(new PathShape().commands(`M0 0L${vp2px(180)} 0S${vp2px(200)} 0 ${vp2px(200)} ${vp2px(20)}V${vp2px(50)}H${vp2px(50)}S${vp2px(33)} ${vp2px(50)} ${vp2px(30)} ${vp2px(40)}L${vp2px(15)} ${vp2px(8)}S${vp2px(15)} 0 0 0Z`))}.backgroundColor(Color.Orange).width('100%').height(60).justifyContent(FlexAlign.SpaceBetween).alignItems(VerticalAlign.Top).borderRadius({topLeft: 20,topRight: 20})}.height('100%').width('100%').padding({ top: 80 })}
}

【效果图】
请添加图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com