• 作者:老汪软件技巧
  • 发表时间:2024-08-17 17:01
  • 浏览量:

写在开头:基础组件 与 容器组件组件属性(常用的通用属性汇总,比较有用)通用属性作用

.width()

描述组件的宽度

.height()

描述组件的长度

.backgroundColor()

为组件赋予背景颜色

.margin()

为组件添加外间距,拉开 组件与组件(组件外部) 的距离

.margin(数值)//每个方向的外边距都相同

.margin({top?:数值,right?:数值,bottom?:数值,left?:数值 })//每个方向设置的外边距不同

.padding()

为组件添加内边距,拉开 组件与边缘(组件内部) 的距离

.padding(数值)//每个方向的内边距都相同

.padding({top?:数值,right?:数值,bottom?:数值,left?:数值 })//每个方向设置的内边距不同

.border({})

为组件设置边框↓↓↓

//四个方向的边框相同
.border({
	width?:数字,//默认为0,即不显示边框
	color?:'',//边框颜色
	style?:BorderStyle
			·Solid //实线(默认)
			·Dashed //虚线
			·Dotted //点线
})
//四个方向的边框不同
.border({
	width:{
		top?:数字,
		bottom?:数字,
		left?:数字,
		right?数字:
	},
	color:{
		top?:'',
		bottom?:'',
		left?:'',
		right?:''
	},
	style:{
		top?:'',
		bottom?:'',
		left?:'',
		right?:''
	}
})

borderRadius({})

设置边框的圆角

.borderRadius(数值)//边框的四个圆角幅度相同

↓↓↓//边框四个圆角幅度不相同

.borderRadius({
	topLeft://左上角
	topRight://右上角
	bottomLeft://左下角
	bottomRight://右下角
})

容器组件:1.Row()与Column()组件描述

Column()

可做根容器(一个build{}内部只可以有一个根容器)

垂直布局:内子组件默认从上往下排列

Row()

可做根容器(一个build{}内部只可以有一个根容器)

水平布局:内子组件默认从左往右排列

- `Column()` 与 `Row()` 的‘**特有属性:**’

**①主轴方向的间距:**`Column({space:20}){ }` //Column组件内子元素上下间距:20

`Row({space:20}){ }` //组件内子元素左右间距:20

(主轴是什么?:主轴:**线性布局容器在布局方向上的轴线,子元素默认沿主轴排列**。Row的主轴--横向;Column的主轴--纵向)

(交叉轴是什么?:交叉轴:垂直于主轴的轴线)*

**②主轴对齐方式:** 设置容器内的子元素在主轴上的对齐方式(将会作用到所有子元素)

`Column(){}.justifyContent(FlexAlign.枚举值)`

`Row(){}.justifyContent(FlexAlign.枚举值)`

其中,‘枚举值’可以取如下:属性描述

Start

首端对其

Center

居中对其

End

尾部对其

Spacebetween

两端对其; 子元素之间 间距相等

SpaceAround

子元素两侧间距相等; 第一个元素到行首的距离、最后一个元素到行尾的距离是:相邻元素之间距离的一半

SpaceEvenly

相邻元素之间的距离、第一个元素与行首距离、最后一个元素到行尾的距离:都一样

③交叉轴对齐方式: 设置容器内的子元素在交叉轴上的对齐方式(将会作用到所有子元素)

Column(){}.alignItems(HorizontalAlign.枚举值)

Row(){}.alignItems(VerticalAlign.枚举值)

其中,‘枚举值’可以取如下:

属性描述

Start\Top

首端对其

Center\Center

居中对其

End\Bottom

尾部对其

鸿蒙开发api_鸿蒙开发入门_

④自适应操作:.layoutWeight(数值)

作用:父容器尺寸确定时,设置layoutWeight属性的子元素和兄弟元素占主轴尺寸按照权重进行分配,并在屏幕尺寸改变时也可保持相同的分配比例以分配主轴空间。虽然比较抽象,但是放在图中就比较容易理解了。

Row(){
  Text('内容1')
    .layoutWeight(1)   //将本容器内,除去‘内容2’所占的100像素以外全部给‘内容1’
    .backgroundColor(Color.Gray)
  Text('内容2')
    .width(100)      //设置宽度为100
    .backgroundColor(Color.Red)
}
.width('100%')

基础组件1.Text()组件

Text()组件是文本内容组件,拥有特有的 “文本属性” :

属性描述详细描述

fontSize

字体大小

.fontSize(数字);默认大小16fp

fontColor

字体颜色

.fontColor(颜色色值);色值:①Color.red②十六进制颜色:'#ff0aa'③rgb()或者rgba() rgb(r,g,b),取值0-255;rgba(r,g,b,a),a为透明度,取值范围0-1

fontStyle

字体样式

.fontStyle(FontStyle.Normal)默认值,正常字体,不倾斜;;.fontStyle(FontStyle.Italic)斜体

fontWeight

字体粗细

①取值:[100, 900],取值越大,字体越粗,默认值为 40②Lighter-->Normal-->Regular-->Medium-->Bold-->Bolder由细逐渐变粗

lineHeight

文本行高

.lineHeight(数字),30(lineHeight)=20(fontSize)+ 2*5(字的大小上下各一半)

decoration

文本修饰线及颜色

.decoration({type:①TextDecorationType.None--无;②TextDecorationType.Underline--下划线;③TextDecorationType.LineThrough--删除线;④TextDecorationType.Overline--顶划线 color:修饰线的颜色,默认黑色})

textAlign

水平方向Text对齐方式

①.textAlign(TextAlign.Start):左对齐,默认 ②textAlign(TextAlign.Center):居中 ③textAlign(TextAlign.End):右对齐 textAlign与width一起使用

align

垂直方向对齐方式

①.align(Alignment.Top):顶对齐 ②.align(Alignment.Center):垂直居中,默认 ③.align(Alignment.Bottom):底对齐 align与height一起使用

textIndent

文本首行缩进

.textIndent(数值)

textOverflow

设置文本超长时的显示方式

①.textOverflow({overflow:TextOverflow.None}):文本超长时裁剪显示 ②.textOverflow({overflow:TextOverflow.Clip}):文本超长时进行裁剪显示 ③.textOverflow({overflow:TextOverflow.Ellipsis}):文本超长时显示不下的文本用省略号代替 ④textOverflow({overflow:TextOverflow.MARQUEE}):文本超长时以跑马灯的方式展示(滚动显示) 跑马灯效果时不需要配合maxLines,但是其他的需要配合

maxLines

设置文本的最大行数

.maxLines(数字)

Text() **基本用法 **:

2.Image()组件

Image()组件是图片组件,主要用于存放并展示图片

Image()组件具有‘图片属性’:

属性描述

width

宽度(通用属性)

height

高度(通用属性)

aspectRatio

宽高比(通用)aspectRatio值=width/height

alt

加载时显示的占位图片,只支持本地图片,不支持网络图片 .alt($r('app.media.startIcon')) //通过加载本地图片进行占位

objectFit

设置图片的填充效果;

①.objectFit(ImageFit.Cover):默认值,图片 等比缩放 到完全覆盖组件范围,可能导致图片显示不完整

②.objectFit(ImageFit.Contain):图片的 宽 或 高 等比缩放 到与容器宽高尺寸最小那个值相同时则停止,可能导致组件存在空白

③.objectFit(ImageFit.Fill):图片 不等比缩放 至充满组件

Image()组件基本用法:

紧急插入总结

不是,不整理不知道,一整理发现这些属性这么麻烦。本来豪言壮语整理完所有常用的基础组件和容器组件以及通用属性,谁曾想四个组件和一些常用通用属性就这么久了。我是小丑。时间紧迫,先欠着,鸽一下,后续再打补丁。