组件的使用:

一、组件介绍:

组件(Component)是界面搭建与显示的最小单位,HarmonyOS ArkUI声明式开发范式为开发者提供了丰富多样的UI组件,我们可以使用这些组件轻松的编写出更加丰富、漂亮的界面。

组件根据功能可以分为以下五大类:基础组件、容器组件、媒体组件、绘制组件、画布组件。其中基础组件是视图层的基本组成单元,包括Text、Image、TextInput、Button、LoadingProgress等。

二、常用组件

1.Text组件:用于展示文本内容

相关使用:

fontColor

ResourceColor

设置文本颜色。

fontSize

Length | Resource

设置文本尺寸,Length为number类型时,使用fp单位。

fontStyle

FontStyle

设置文本的字体样式。默认值:FontStyle.Normal。

fontWeight

number | FontWeight | string

设置文本的字体粗细,number类型取值[100, 900],取值间隔为100,默认为400,取值越大,字体越粗。string类型仅支持number类型取值的字符串形式,例如“400”,以及“bold”、“bolder”、“lighter”、“regular”、“medium”,分别对应FontWeight中相应的枚举值。默认值:FontWeight.Normal。

fontFamily

string | Resource

设置文本的字体列表。使用多个字体,使用“,”进行分割,优先级按顺序生效。例如:“Arial,sans-serif”。

文本对齐方式:

使用textAlign属性可以设置文本的对齐方式。

textAlign参数类型为TextAlign,定义了以下几种类型:

  • Start(默认值):水平对齐首部。

  • Center:水平居中对齐。

  • End:水平对齐尾部。

超长文本设置:

使用textOverflow设置文本截取方式,需配合maxLines使用,单独设置不生效,maxLines用于设置文本显示最大行数。

Text('This is the text content of Text Component This is the text content of Text Component').fontSize(16).maxLines(1).textOverflow({overflow:TextOverflow.Ellipsis}).backgroundColor(0xE6F2FD) 

效果图如下:

文本装饰线:

使用decoration设置文本装饰线样式及其颜色,decoration包含type和color两个参数,其中type用于设置装饰线样式,参数类型为TextDecorationTyp,color为可选参数。

例:

  .decoration({ type: TextDecorationType.Underline, color: Color.Black })

包括以下几个类型:

None:不使用文本装饰线。

Overline:文字上划线修饰

LineThrough:穿过文本的修饰线。

Underline:文字下划线修饰。

2.Image组件:用来渲染展示图片

示例如下:

Image($r("app.media.icon")).width(100).height(100)

效果图如下:

设置缩放类型:

使用objectFit属性设置图片的缩放类型,objectFit的参数类型为ImageFit。

将图片加载到Image组件,设置宽高各100,设置objectFit为Cover(默认值),设置图片背景色为灰色0xCCCCCC。示例代码如下:

Image($r("app.media.image2")).objectFit(ImageFit.Cover).backgroundColor(0xCCCCCC).width(100).height(100) 

ImageFit包含以下几种类型:

Contain:保持宽高比进行缩小或者放大,使得图片完全显示在显示边界内。

Cover(默认值):保持宽高比进行缩小或者放大,使得图片两边都大于或等于显示边界。

Auto:自适应显示。

Fill:不保持宽高比进行放大缩小,使得图片充满显示边界。

ScaleDown:保持宽高比显示,图片缩小或者保持不变。

None:保持原有尺寸显示。

当然也可以导入网络图片:

例:

Image('https://www.example.com/xxx.png')

3.TextInput :TextInput组件用于输入单行文本,响应输入事件。

TextInput().fontColor(Color.Blue).fontSize(20).fontStyle(FontStyle.Italic).fontWeight(FontWeight.Bold).fontFamily('Arial') 

效果图如下:

设置输入提示文本:

使用placeholder属性

TextInput({ placeholder: '请输入帐号' })

设置输入类型:

使用type属性:

TextInput({ placeholder: '请输入密码' }).type(InputType.Password)

Normal:基本输入模式。支持输入数字、字母、下划线、空格、特殊字符。

Password:密码输入模式。

Email:e-mail地址输入模式。

Number:纯数字输入模式。

4.Button组件:主要用来响应点击操作,可以包含子组件。

Button('登录', { type: ButtonType.Capsule, stateEffect: true }).width('90%').height(40).fontSize(16).fontWeight(FontWeight.Medium).backgroundColor('#007DFF')

效果图如下:

设置样式;

type用于定义按钮样式:

Capsule:胶囊型按钮(圆角默认为高度的一半)

Circle:圆形按钮

Normal:普通按钮(默认不带圆角)

设置按钮点击事件:

可以给Button绑定onClick事件,每当用户点击Button的时候,就会回调执行onClick方法,调用里面的逻辑代码。

Button('登录', { type: ButtonType.Capsule, stateEffect: true })....onClick(() => {// 处理点击事件逻辑})

梅科尔工作室-李柯增-鸿蒙笔记2相关推荐

  1. 梅科尔工作室-李柯增-鸿蒙笔记4

    一.官方API使用 首先需要找到想要使用的API文档.在基础文档里位置如下.找到之后,查看文档中关于此接口的说明,查看使用方法和使用案例后即可使用. 二.路由跳转模块 官方讲解:华为开发者学堂 具体作 ...

  2. 梅科尔工作室-李柯增-鸿蒙笔记3

    一.list组件: 由list容器组件和listitem容器组件构成,list是一个大容器,listitem是大容器里的小容器 如图所示使用: 二.父子组件(又称自定义组件): 使用说明: 1.子组件 ...

  3. 梅科尔工作室-李舒婷-鸿蒙笔记4

    官方API使用 路由器跳转模块 实现Ability内页面的跳转 导入router模块 跳转方式 选设置点击按钮 点击一次跳转到已经建立的页面再一次或多次点击就会新建页面 按返回键返回时从最后建立的页面 ...

  4. 梅科尔工作室-李舒婷-鸿蒙笔记2

    组件分为: 基础组件.容器组件.媒体组件.绘制组件.画布组件. 基础组件包括:Text .Image.Textlnput .Button .LoadingProgress 等 Text: Image ...

  5. 梅科尔工作室-李承津-鸿蒙笔记4

    API接口(给界面添加功能) 页面跳转模块 导入router模块 页面跳转方式 1.每使用一次新建一个页面,最大页面数为32 router.push({url: 'pages/Second',para ...

  6. 梅科尔工作室-崔启凡-鸿蒙笔记4

    鸿蒙笔记4 路由跳转 作用 用法 跳转方式 方式一 方式二 方式三 方式四 跳转页面数据的接受 数据请求 弹窗 绑定事件 点击事件 触摸事件 挂载卸载事件 拖拽事件 路由跳转 作用 实现Ability ...

  7. 梅科尔工作室-梁嘉莹-鸿蒙笔记1

    基本操作界面介绍 预览按钮 内置API文档查阅 项目设置 运行按钮(只有在真机模拟或远程模拟时才可以使用) 安装插件,在files下的settings-->Plugins里面,可以安装一个中文的 ...

  8. 梅科尔工作室-江凌宇-鸿蒙笔记1

    对于鸿蒙软件开发所用编译器的介绍 鸿蒙APP开发所采用的编译器为华为自研的DevEc编译器,简洁美观易上手是此编译器的巨大优势 主要目录配置文件作用(stage模型和FA模型下) 下面是在FA模型下的 ...

  9. 梅科尔工作室-江凌宇-鸿蒙笔记2

    HarmonyOS构建漂亮的页面 一.页面基本元素介绍 常用基础组件 组件介绍: 组件(Component)是界面搭建与显示的最小单位,HarmonyOS ArkUI声明式开发范式为开发者提供了丰富多 ...

最新文章

  1. 一文说清AI智能平台
  2. 从库中图片逐帧插入到场景
  3. Oracle报错createPool,Jmeter中连接Oracle报错Cannot create PoolableConnectionFactory(示例代码)...
  4. Android 开源库和项目 2
  5. 小米笔记本引导修复_知识帖,笔记本电脑不能开机?你可以试试这些办法
  6. 2017甘肃省计算机二级考试,甘肃省2017年计算机二级考试网上报名须知及流程
  7. windows7 shift+右键 “在此处打开命令窗口”
  8. 15.看板方法---启动看板变革
  9. 详解MySQL中EXPLAIN解释命令(转)
  10. 越南也自研5G设备,有这么容易?
  11. 关于oracle误删数据如何进行恢复
  12. 一文回顾腾讯数字生态大会·微搭低代码专场
  13. SPSS实现神经网络(多层感知器)
  14. MarkDown 分割线
  15. BladeX框架源码分析--00、包结构
  16. Failed to introspect Class [org.springframework.cloud.gateway.config.GatewayAutoConfiguration$NettyC
  17. JAVAFX如何在文本框内插入图片
  18. 使用梯度上升法求解 PCA 问题
  19. 申请ios开发者证书到获取p12文件及profiles文件
  20. Android之经典Launcher主菜单模块学习

热门文章

  1. 什么是API,SDK和API之间有什么关系呢?
  2. pdf转换成word怎么转换?这个方法一学就会!
  3. warpAffine函数解析
  4. 新加坡国立大学招收博士生/博士后/研究助理/访问学生
  5. 1.5 20:球弹跳高度的计算
  6. 如何在输入特殊符号,例如角度“∠”
  7. Windows 搭建 Nexus3 私服
  8. MT6735手动修改屏幕分辨率
  9. 听见丨苹果申请自主导航系统专利,自动驾驶汽车梦再近一步 现代打造更聪明、实用汽车AI语音系统
  10. 交换机上STP端口角色选举规则