HarmonyOS Tabs组件标题长度如何自适应
如何设置能使标题长度自适应,每个标题的间距固定,代码如下:
@Component
export struct LUACHomeMainRecommendView {
@Prop recommendModel: LUACHTObject<LUACHTRecommendInfoData>
@State currentIndex: number = 0
@Builder
tabBuilder(index: number, name?: string) {
RelativeContainer() {
Text(name)
.fontColor(this.currentIndex === index ? $r('app.color.lucc_ui_color_222222') :
$r('app.color.luac_home_tab_color_758190'))
.fontSize(16)
.textAlign(TextAlign.Center)
.width('100%')
.maxLines(1)
.fontWeight(FontWeight.Bold)
.alignRules({
middle: { anchor: '__container__', align: HorizontalAlign.Center },
top: { anchor: '__container__', align: VerticalAlign.Top },
})
.margin({ top: 8 })
.id('title')
Image($r('app.media.luac_home_tab_progressline'))
.width(65)
.height(4)
.opacity(this.currentIndex === index ? 1 : 0)
.alignRules({
middle: { anchor: 'title', align: HorizontalAlign.Center },
bottom: { anchor: '__container__', align: VerticalAlign.Bottom },
})
.margin({ bottom: 8 })
.id('image')
}
.width('100%')
.margin({
top: 10,
bottom: 0,
left: 10,
right: 10
})
}
build() {
Column() {
if (this.recommendModel.data && this.recommendModel.data.length > 0) {
Tabs({ barPosition: BarPosition.Start }) {
ForEach(this.recommendModel.data, (item: LUACHTRecommendInfoData, index: number) => {
TabContent() {
Row() {
Text(item.tabName)
.height(182)
.fontSize(20)
}
.backgroundColor(Color.Orange)
.justifyContent(FlexAlign.Center)
.width('100%')
.height('100%')
}.tabBar(this.tabBuilder(index, item.tabName))
}, (item: LUACHTRecommendInfoData, index: number) => JSON.stringify(item) + index)
}
.vertical(false)
.barMode(BarMode.Scrollable, { margin: 10, nonScrollableLayoutStyle: LayoutStyle.SPACE_BETWEEN_OR_CENTER })
.fadingEdge(false)
// .barWidth(80)
// .barWidth('100%')
.barHeight(44)
.animationDuration(300)
.onAnimationStart((index: number, targetIndex: number) => {
this.currentIndex = targetIndex;
})
.width('100%')
.height('100%')
}
}.width('100%')
}
}
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS Tabs组件,TabContent的高度无法自适应内容组件高度
554浏览 • 1回复 待解决
Grid组件如何实现高度自适应
3420浏览 • 1回复 待解决
Web组件如何实现高度自适应?
1200浏览 • 1回复 待解决
HarmonyOS Grid 组件如何根据子元素自适应高度?
175浏览 • 1回复 待解决
HarmonyOS Text组件如何实现文字大小自适应?
924浏览 • 1回复 待解决
HarmonyOS web组件自适应高度问题
1173浏览 • 1回复 待解决
HarmonyOS web组件怎么自适应高度
179浏览 • 1回复 待解决
HarmonyOS 自适应父组件高度问题
1291浏览 • 1回复 待解决
HarmonyOS Grid组件能否高度自适应
158浏览 • 1回复 待解决
HarmonyOS 自定义弹窗中放Web组件, 弹窗高度不能自适应, Web高度不能自适应
37浏览 • 1回复 待解决
HarmonyOS RelativeContainer如何实现自适应自组件宽高?
352浏览 • 1回复 待解决
HarmonyOS gridItem不能根据内部组件自适应大小
149浏览 • 1回复 待解决
HarmonyOS Grid组件能否自适应内容高度?
169浏览 • 1回复 待解决
arktsUI组件的自适应要怎么?
701浏览 • 1回复 待解决
HarmonyOS grid如何自适应宽度
234浏览 • 1回复 待解决
HarmonyOS webview如何设置自适应
978浏览 • 1回复 待解决
HarmonyOS Text无法自适应
131浏览 • 1回复 待解决
HarmonyOS RichText自适应高度
158浏览 • 1回复 待解决
HarmonyOS 高度自适应
415浏览 • 1回复 待解决
HarmonyOS web组件如何实现根据html字符内容高度自适应
168浏览 • 1回复 待解决
HarmonyOS RelativeContainer、List组件怎么实现自适应内容高度
1206浏览 • 2回复 待解决
HarmonyOS 如何实现自适应web的高度
28浏览 • 1回复 待解决
自适应页面滚动如何实现
707浏览 • 1回复 待解决
自适应缩放布局如何实现
647浏览 • 1回复 待解决
弹窗大小如何改为自适应
889浏览 • 1回复 待解决
可参考文档示例6:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/ts-container-tabs-V5#示例6
可使用自定义tabbar,参考示例如下: