HarmonyOS 自定义StepperView组件如何实现

我想实现如图所示的StepperView组件,使用哪种方式实现好一些

HarmonyOS  自定义StepperView组件如何实现  -鸿蒙开发者社区

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

自定义组件可以根据自己的需求,对demo中的组件布局和组件的大小进行调整,达到自己需求的效果,下面的Demo供参考:

interface DList {
  id:number
  textContent:string
  time:string
  icon:Resource
  isPassed:Boolean
  isCurrent:Boolean
}
@Entry
@Component
struct DemoList {
  @State list:DList[] = [
    {
      id: 1,
      textContent: '事件一',
      time:'15:01',
      icon:$r('app.media.app_icon'),
      isPassed:true,
      isCurrent:false
    },
    {
      id: 2,
      textContent: '事件二',
      time:'15:02',
      icon:$r('app.media.app_icon'),
      isPassed:false,
      isCurrent:true
    },
    {
      id: 3,
      textContent: '事件三',
      time:'15:03',
      icon:$r('app.media.app_icon'),
      isPassed:false,
      isCurrent:false
    },
    {
      id: 4,
      textContent: '事件四',
      time:'15:04',
      icon:$r('app.media.app_icon'),
      isPassed:false,
      isCurrent:false
    },
  ]
  @State listLength:Number = this.list.length;
  build() {
    Column(){
      List(){
        ForEach(this.list,(item:DList)=>{
          ListItem(){
            Column(){
              Text(item.textContent)
                .margin({bottom:10})
                .fontSize(12)
              Row(){
                Image(item.isPassed || item.isCurrent ? $r('app.media.startIcon') : $r('app.media.startIcon'))
                  .width(10)
                  .height(10)
                // .margin({right: 5,left:5})
                Text()
                  .width('100%')
                    // .margin({right: 5,left:5})
                  .border({width:{top:this.listLength == item.id ? 0 : 1},color:item.isPassed ? '#EA2D53' : '#dddddd'})
              }
              .width('100%')
              .margin({left:'82%'})
            }
            .width('100%')
          }
          .width('25%')
        })
      }
      .alignListItem(ListItemAlign.Center)
      .listDirection(Axis.Horizontal)
    }
  }
}
分享
微博
QQ
微信
回复
2天前
相关问题
HarmonyOS自定义组件增加方法如何实现
416浏览 • 1回复 待解决
HarmonyOS CoverFlow效果自定义组件实现
295浏览 • 1回复 待解决
swiper组件如何实现自定义切换动画
775浏览 • 1回复 待解决
HarmonyOS 定义自定义组件
50浏览 • 1回复 待解决
HarmonyOS如何实现自定义scheme?
61浏览 • 1回复 待解决
HarmonyOS 如何实现自定义Toast
23浏览 • 1回复 待解决
HarmonyOS 如何自定义toast组件
19浏览 • 1回复 待解决
组件自定义回调函数实现
455浏览 • 1回复 待解决
HarmonyOS 自定义控件实现
16浏览 • 1回复 待解决
HarmonyOS如何自定义组件的Controller?
389浏览 • 1回复 待解决
HarmonyOS 如何主动销毁自定义组件
84浏览 • 1回复 待解决
HarmonyOS如何自定义视频组件样式
470浏览 • 1回复 待解决
HarmonyOS 数字自定义键盘如何实现
337浏览 • 1回复 待解决
HarmonyOS 自定义组件如何获取高度?
226浏览 • 1回复 待解决
HarmonyOS如何手动重置自定义组件
391浏览 • 1回复 待解决
如何自定义组件原型菜单
902浏览 • 1回复 待解决
ArkTs如何自定义容器组件
3126浏览 • 1回复 待解决