HarmonyOS Tab如何居左对齐

HarmonyOS
2025-01-09 15:46:27
浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
FengTianYa

参考示例如下:

@Entry
@Component
struct TabsExample {
  @State currentIndex: number = 0;
  private tabsController: TabsController = new TabsController();

  @Builder
  TabBuilder(title: string, targetIndex: number, selectedImg: Resource, normalImg: Resource) {
    Column() {
      Text(title)
        .fontColor(this.currentIndex === targetIndex ? '#1698CE' : '#6B6B6B')
      Image(this.currentIndex === targetIndex ? selectedImg : normalImg)
        .size({ width: 25, height: 25 })
    }
    .justifyContent(FlexAlign.Start)
    .width(50)
    .height(50)
    .alignItems(HorizontalAlign.Start)
    .onClick(() => {
      this.currentIndex = targetIndex;
      this.tabsController.changeIndex(this.currentIndex);
    })
    .backgroundColor(targetIndex === this.currentIndex ? "#ffffffff" : "#ffb7b7b7")
  }

  build() {
    Column() {
      // 页签
      Column() {
        Row() {
          this.TabBuilder("视频", 0, $r('app.media.startIcon'), $r('app.media.startIcon'))
          this.TabBuilder("评论", 1, $r('app.media.startIcon'), $r('app.media.startIcon'))
        }
        .width('100%').backgroundColor("#ffb7b7b7")
      }
      .width('100%')

      //tabs
      Tabs({ barPosition: BarPosition.Start, controller: this.tabsController }) {
        TabContent() {
        }
        .backgroundColor(Color.Pink)

        TabContent() {
        }
        .backgroundColor(Color.Red)
      }
      //.barWidth(130)
      .width('100%').barHeight(0)
      //.barMode(BarMode.Scrollable)
      .animationDuration(100).onChange((index: number) => {
        console.log('foo change')
        this.currentIndex = index;
      })
    }.height('100%')
  }
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
分享
微博
QQ
微信
回复
2025-01-09 18:36:26
相关问题
HarmonyOS Tab控件的bar怎么显示?
461浏览 • 1回复 待解决
Tab组件,无法对齐该怎么处理?
988浏览 • 1回复 待解决
HarmonyOS Tabs如何对齐?
429浏览 • 1回复 待解决
HarmonyOS tabs位置如何显示
451浏览 • 1回复 待解决
HarmonyOS 让tabbar显示
458浏览 • 1回复 待解决
Tabs如何才能显示呢
1437浏览 • 1回复 待解决
HarmonyOS Tabs组件对齐
534浏览 • 1回复 待解决
HarmonyOS 顶部tabs如何设置对齐
916浏览 • 1回复 待解决
HarmonyOS tabs的tabBar怎么
1028浏览 • 1回复 待解决
HarmonyOS Tabs组件的Tabs如何对齐
1059浏览 • 1回复 待解决
HarmonyOS tabs不能设置对齐
407浏览 • 1回复 待解决
HarmonyOS Tabs组件tabBar是否可以
629浏览 • 1回复 待解决
HarmonyOS 自定义tabbar对齐
458浏览 • 1回复 待解决