鸿蒙界面开发(一):基础界面实战

界面开发

build(){}函数里写代码,预览器看效果

布局思想

由上到下,build第一层只能有一个组件,且必须为容器组件,
一般是Column(){}容器组件:列Column(){};行Row (){}
基本组件:Text (参数).行为
在这里插入图片描述

build有且只有一个根组件,且是容器组件

组件属性方法

在这里插入图片描述

如果是容器:容器组件(){}.属性1(值).属性2(值).……
如果是基本组件:组件(内容).属性1(值).属性2(值).……没有大括号
通用属性:height weight backgroundcolor
字体属性:fontsize(默认16) fontweight(可以是fontweight的属性,也可以是100~700的值)
.weight(‘100%’)会使内容居左,百分数需要引号
fontweight默认400,加粗(bold)700

文本颜色

.fontColor(颜色值)颜色值可以是枚举色,也可以是具体值(#开头的十六进制),十六进制需要引号。
在这里插入图片描述

文本溢出省略号,行高

.textoverflow({overflow:TextOverFlow.Ellipsis}).maxlines(显示几行)
ellpisis文字溢出显示省略号
clip和none效果一样
marquee单行滚动

图片组件

网络图片Image(网址)
宽高等比例缩放
本地图片加载resources/base/media/图片.jpg
语法:Image($r('app.media.product'))
在这里插入图片描述

输入框和按钮

输入框:TextInput({参数对象}).属性方法()
密码类型,自带小眼睛与切换功能元素与元素之间的距离,
在这里插入图片描述
按钮:Button(文本)
拓:
column({space:10}){},给column或者上一层容器设置对象参数
在这里插入图片描述

综合实战——华为登录

在这里插入图片描述

build() {
    Column({
      space: 10
    }){
      Image($r('app.media.startIcon'))
        .width(50)
      TextInput({
        placeholder: '请输入用户名'
      })
      TextInput({
        placeholder: '请输入密码'
      }).type(InputType.Password)
      Button('登录')
        .width('100%')
      Row({
        space:10
      }){
        Text('前往注册')
        Text('忘记密码')
      }
    }.height('100%')
    .width('100%')//容器.width('100%')默认居中效果
    .padding(10)//添加内边距
   }

svg资源

在这里插入图片描述

内边距 padding

在这里插入图片描述
内边距:在组件内添加间距,拉开内容与组件之间的距离

Text('内边距padding')
.padding(20)

Text('内边距padding')
.padding({
 top:10,
 right:20,
 bottom:30,
 left:10
})//四个方向分别单独设置

外边距margin

在组件外添加间距,拉开两个组件之间的距离
和space的区别是,space添加的相等的间距

Text('外边距padding')
.margin(20)

Text('外边距padding')
.margin({
 top:10,
 right:20,
 bottom:30,
 left:10
})//四个方向分别单独设置

会影响同一行的内容

边框border

给组件添加边界,进行装饰美化

Text('边框border')
.border({
 width:1, //必须
 color:#3274f6,
 style:BorderStyle.Solid,
})//四个方向相同

//分别设置四个方向
```javascript
Text('边框border')
.border({
 width:{
 	left:1,
 	right:2
 }, //必须
 color:{
 	left:Color.Red,
 	right:Color.blue
 },
 style:{
 left:BorderStyle.Solid,//实线
 right:BorderStyle.Dashed,//虚线
 }
})//四个方向相同

必须设置边框宽度

组件圆角

//四个圆角相同
.borderRadius(5)
//四个圆角不同
.borderRaduis({
 topLeft:5,
 topRight:10,
 bottomLeft:10,
 bottomRight:10
})

特殊形状的圆角设置

  1. 正圆
Text('正圆')
 .width(100)
 .height(100)//宽度高度一样
 .borderRadius(50)//圆角是宽或高的一半
  1. 胶囊按钮(左右半圆)
Text('正圆')
 .width(100)
 .height(50)//宽度大,高度小
 .borderRadius(25)//圆角是高的一半

背景属性

在这里插入图片描述

背景图片

.backgroundImage($r('本地地址'))//也可以用网络地址

.backgroundImage($r('本地地址'),背景图平铺方式——枚举ImageRepeat)//默认不平铺

.backgroundImage($r('本地地址'),ImageRepeat.X)

.backgroundImage($r('本地地址'),ImageRepeat.Y)

.backgroundImage($r('本地地址'),ImageRepeat.XY)

背景图片的位置

默认在左上角显示

.backgroundImagePosition(坐标对象或枚举)
位置坐标:{x:坐标位置,y:坐标位置}——图片左顶点的位置在容器的位置
枚举Alignment
Text()
 .backgroundImage()
 .backgroundImagePosition({x:10,y:10})
 .backgroundImagePosition(Alignment.center)

=坐标值的单位和宽高的单位是不同的。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

背景尺寸大小

作用:背景图缩放

.backgroundImageSize(宽高对象 或 枚举)

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

weightOneMillion

感谢未来的亿万富翁捧个钱场~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值