如何使用 flutter 扩展将文本小部件的不透明度更改为 0.7?
How to change opacity of text widget to 0.7 with flutter extension?
我需要在 flutter 中使用扩展更改文本小部件的样式。
此扩展必须将 Text Widget 的不透明度更改为 0.7。
当我在文本小部件上使用时,我可以将小部件的不透明度更改为 0.7。
更新:
如果 Text 小部件具有样式和颜色,则可以。但是当没有样式时会收到空错误。
extension TextStyleOpacity on Text {
Text opacity70(){
return Text("A", style:this.style!.copyWith(color:this.style?.color!.withOpacity(0.3) ) ,) ;
}
}
好的。我更改了文本样式的扩展名并解决了,答案是:
extension TextStyleOpacity on TextStyle?{
TextStyle colorOpacity ({required BuildContext context}){
Color? color =this==null?DefaultTextStyle.of(context).style.color: this?.color;
if(this==null){
return DefaultTextStyle.of(context).style.copyWith(color: color!.withOpacity(0.7));
}else{
return this!.copyWith(color: color!.withOpacity(0.7));
}
}
}
并且像这个例子一样使用:
Text(textWidget.data! ,style:textWidget.style.colorOpacity(context: context),);
我需要在 flutter 中使用扩展更改文本小部件的样式。 此扩展必须将 Text Widget 的不透明度更改为 0.7。 当我在文本小部件上使用时,我可以将小部件的不透明度更改为 0.7。
更新: 如果 Text 小部件具有样式和颜色,则可以。但是当没有样式时会收到空错误。
extension TextStyleOpacity on Text {
Text opacity70(){
return Text("A", style:this.style!.copyWith(color:this.style?.color!.withOpacity(0.3) ) ,) ;
}
}
好的。我更改了文本样式的扩展名并解决了,答案是:
extension TextStyleOpacity on TextStyle?{
TextStyle colorOpacity ({required BuildContext context}){
Color? color =this==null?DefaultTextStyle.of(context).style.color: this?.color;
if(this==null){
return DefaultTextStyle.of(context).style.copyWith(color: color!.withOpacity(0.7));
}else{
return this!.copyWith(color: color!.withOpacity(0.7));
}
}
}
并且像这个例子一样使用:
Text(textWidget.data! ,style:textWidget.style.colorOpacity(context: context),);