HarmonyOS 鸿蒙Next @Style 不支持 .fontSize、.fontColor等文本样式?但是文档中fontSize是公共属性

HarmonyOS 鸿蒙Next @Style 不支持 .fontSize、.fontColor等文本样式?但是文档中fontSize是公共属性

使用@Styles实现一个样式重用,提示
cke_1794.png

cke_2149.png


```php
.backgroundColor('#F5F5F5')
.fontSize(12)
.borderRadius(3)
.textOverflow({ overflow: TextOverflow.Ellipsis })
.maxLines(1)
.constraintSize({ maxWidth: 120 })
.fontColor('#666666')
.padding({ top: 3, bottom: 3, left: 4, right: 4 })
.margin({ right: 10 })

更多关于HarmonyOS 鸿蒙Next @Style 不支持 .fontSize、.fontColor等文本样式?但是文档中fontSize是公共属性的实战教程也可以访问 https://www.itying.com/category-93-b0.html

5 回复

其实并不是通用的
只能用@extend(Text) 修饰了,

更多关于HarmonyOS 鸿蒙Next @Style 不支持 .fontSize、.fontColor等文本样式?但是文档中fontSize是公共属性的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


是的,用extend没有问题,

这两个属性貌似只能用在text组件上,说是通用属性,其实是文字的通用属性。

在HarmonyOS(鸿蒙OS)中,@Style装饰器用于定义组件的样式,但它并不直接支持 .fontSize.fontColor 等文本样式属性。尽管文档中提到的 fontSize 是公共属性,但它在 @Style 中的使用受限。具体来说,@Style 主要用于定义组件的整体样式,如布局、背景等,而不是直接应用于文本样式。

文本样式通常通过组件的特定属性来设置,例如 Text 组件的 fontSizefontColor 属性。如果你需要在 @Style 中定义文本样式,可以考虑使用 TextStyle 对象,或者直接在组件中设置这些属性。

例如,直接在 Text 组件中设置 fontSizefontColor

Text('Hello, HarmonyOS')
  .fontSize(20)
  .fontColor('#FF0000')

如果你希望复用样式,可以通过 @Extend 装饰器来扩展组件的样式,而不是使用 @Style

总之,@Style 不直接支持 .fontSize.fontColor,这些属性应通过组件的特定属性或 TextStyle 对象来设置。

回到顶部