HarmonyOS 需要频道导航栏功能样例

新闻类app的频道功能开发,需要在Tabs后面加上image作为按钮点击跳转到频道自定义页面,请问这个怎么布局?

Row(){Tabs()image()}这种形式会导致 Tabs里面的TabContent不能占满宽度

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

请参考如下示例代码

import { router } from '@kit.ArkUI';
@Entry
@Component
struct AAA {
  build() {
    Column() {
      Stack(){
        Tabs({ barPosition: BarPosition.End, controller: this.controller001 }) {
          TabContent() {
            Column() {
              Text('Tab1')
                .fontSize(36)
                .fontColor('#182431')
                .fontWeight(500)
                .opacity(0.4)
                .margin({ top: 30, bottom: 56.5 })
              Divider()
                .strokeWidth(0.5)
                .color('#182431')
                .opacity(0.05)
            }.width('100%')
          }.tabBar(this.tabBuilder001(0))
          TabContent() {
            Column() {
              Text('Tab2')
                .fontSize(36)
                .fontColor('#182431')
                .fontWeight(500)
                .opacity(0.4)
                .margin({ top: 30, bottom: 56.5 })
              Divider()
                .strokeWidth(0.5)
                .color('#182431')
                .opacity(0.05)
            }.width('100%')
          }.tabBar(this.tabBuilder001(1))
          TabContent() {
            Column() {
              Text('Tab3')
                .fontSize(36)
                .fontColor('#182431')
                .fontWeight(500)
                .opacity(0.4)
                .margin({ top: 30, bottom: 56.5 })
              Divider()
                .strokeWidth(0.5)
                .color('#182431')
                .opacity(0.05)
            }.width('100%')
          }.tabBar(this.tabBuilder001(2))
          TabContent() {
            Column() {
              Text('Tab4')
                .fontSize(36)
                .fontColor('#182431')
                .fontWeight(500)
                .opacity(0.4)
                .margin({ top: 30, bottom: 56.5 })
              Divider()
                .strokeWidth(0.5)
                .color('#182431')
                .opacity(0.05)
            }.width('100%')
          }.tabBar(this.tabBuilder001(3))
        }
        .vertical(false)
        .barHeight(56)
        .onChange((index: number) => {
          this.currentIndex = index
        })
        .width(360)
        .height(190)
        .backgroundColor('#F1F3F5')
        .margin({ top: 38 })
        Image($r("app.media.app_icon"))
          .width('5%')
          .margin({top:180,left:320})
          .onClick(() => {
            console.info("hello")
            router.pushUrl({url:"pages/page2"})
          })
      }
    }.width('100%')
  }
  @State fontColor: string = '#182431'
  @State selectedFontColor: string = '#007DFF'
  @State currentIndex: number = 0
  private controller001: TabsController = new TabsController()
  @Builder
  tabBuilder001(index: number) {
    Column() {
      Text(`Tab${index + 1}`)
        .fontColor(this.currentIndex === index ? this.selectedFontColor : this.fontColor)
        .fontSize(10)
        .fontWeight(500)
        .lineHeight(14)
    }.width('100%')
  }
}
分享
微博
QQ
微信
回复
2天前
相关问题
HarmonyOS 能否提供Web工程代码?
213浏览 • 1回复 待解决
HarmonyOS 能否提供登录界面demo?
225浏览 • 1回复 待解决
HarmonyOS 应用并发同步的代码
418浏览 • 1回复 待解决
HarmonyOS 运行工程,报App Launch
547浏览 • 1回复 待解决
HarmonyOS 请提供登录页面的实现
363浏览 • 1回复 待解决
HarmonyOS能否提供数据存储的工程
360浏览 • 1回复 待解决
HarmonyOS 怎么去掉底部导航
67浏览 • 1回复 待解决
获取状态导航高度
647浏览 • 1回复 待解决
HarmonyOS有没有通用工具类的Demo
382浏览 • 1回复 待解决
HarmonyOS H5拉起系统相机的代码
263浏览 • 1回复 待解决
Navigation如何隐藏导航
2185浏览 • 1回复 待解决
HarmonyOS 导航主题色如何配置
56浏览 • 1回复 待解决
关于sidebar侧边遮挡导航的问题
471浏览 • 1回复 待解决
eTS求助 tabBar的Icon的代码
5840浏览 • 1回复 待解决
如何获取状态导航高度
2919浏览 • 1回复 待解决
如何获取状态导航高度?
247浏览 • 0回复 待解决
鸿蒙如何获取导航和状态高度
11426浏览 • 1回复 待解决
HarmonyOS 如何让内容超出底部导航
39浏览 • 1回复 待解决
如何设置状态导航的颜色
2948浏览 • 1回复 待解决