鸿蒙:搜索框组件Search

news2024/12/24 11:08:54

搜索框组件,适用于浏览器的搜索内容输入框等应用场景。

说明

该组件从API Version 8开始支持

子组件

接口

Search(options?: { value?: string, placeholder?: string, icon?: string, controller?: SearchController })

参数:

参数名

参数类型

必填

参数描述

value

string

设置当前显示的搜索文本内容。

placeholder

string

设置无输入时的提示文本。

icon

string

设置搜索图标路径,默认使用系统搜索图标。

说明:

icon的数据源,支持本地图片和网络图片。

- 支持的图片格式包括png、jpg、bmp、svg、gif和pixelmap。

- 支持Base64字符串。格式data:image/[png|jpeg|bmp|webp];base64,[base64 data], 其中[base64 data]为Base64字符串数据。

controller

SearchController

设置Search组件控制器。

属性

除支持通用属性外,还支持以下属性:

名称

参数类型

描述

searchButton

string

搜索框末尾搜索按钮文本内容,默认无搜索按钮。

placeholderColor

ResourceColor

设置placeholder文本颜色。

placeholderFont

Font

设置搜索框内输入文本样式,包括字体大小,字体粗细,字体族,字体风格。目前仅支持默认字体族。

textFont

Font

设置搜索框内输入文本样式,包括字体大小,字体粗细,字体族,字体风格。目前仅支持默认字体族。

textAlign

TextAlign

设置文本在搜索框中的对齐方式。

默认值:TextAlign.Start

copyOption9+

CopyOptions

设置输入的文本是否可复制。

事件

除支持通用事件外,还支持以下事件:

名称

功能描述

onSubmit(callback: (value: string) => void)

点击搜索图标、搜索按钮或者按下软键盘搜索按钮时触发该回调。

-value: 当前搜索框中输入的文本内容。

onChange(callback: (value: string) => void)

输入内容发生变化时,触发该回调。

-value: 当前搜索框中输入的文本内容。

onCopy(callback: (value: string) => void)

长按搜索框弹出剪切板之后,点击剪切板的复制按钮触发该回调。

-value: 复制的文本内容。

onCut(callback: (value: string) => void)

长按搜索框弹出剪切板之后,点击剪切板的剪切按钮触发该回调。

-value: 剪切的文本内容。

onPaste(callback: (value: string) => void)

长按搜索框弹出剪切板之后,点击剪切板的粘贴按钮触发该回调。

-value: 粘贴的文本内容。

SearchController

Search组件的控制器,目前通过它可控制Search组件的光标位置。

导入对象

controller: SearchController = new SearchController()

caretPosition

caretPosition(value: number): void

设置输入光标的位置。

参数:

参数名

参数类型

必填

参数描述

value

number

从字符串开始到光标所在位置的长度。

示例

// xxx.ets
@Entry
@Component
struct SearchExample {
@State changeValue: string = ''
@State submitValue: string = ''
controller: SearchController = new SearchController()

build() {
Column() {
Text('onSubmit:' + this.submitValue).fontSize(18).margin(15)
Text('onChange:' + this.changeValue).fontSize(18).margin(15)
Search({ value: this.changeValue, placeholder: 'Type to search...', controller: this.controller })
.searchButton('SEARCH')
.width(400)
.height(40)
.backgroundColor('#F5F5F5')
.placeholderColor(Color.Grey)
.placeholderFont({ size: 14, weight: 400 })
.textFont({ size: 14, weight: 400 })
.onSubmit((value: string) => {
this.submitValue = value
})
.onChange((value: string) => {
this.changeValue = value
})
.margin(20)
Button('Set caretPosition 1')
.onClick(() => {
// 设置光标位置到输入的第一个字符后
this.controller.caretPosition(1)
})
}.width('100%')
}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1553465.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

61、服务攻防——中间件安全CVE复现K8sDockerJettyWebsphere

文章目录 K8sDockerWebSphere K8s k8s:简单来说,跟docker一样,是个容器系统。 k8s对外攻击面总结 常见漏洞:未授权访问、提权漏洞 Docker docker逃逸:1、由内核漏洞引起;2、由Docker软件设计引起&#x…

【Git】git status中文文件名编码问题解决

git status中文文件名编码问题解决 一、问题二、解决方法 一、问题 在默认配置下,查看文件状态,中文文件名在工作区状态输出,中文名不能正确显示,而是显示为八进制的字符编码。 PS D:\VS代码\Widget> git status On branch m…

TOP100-回溯(二)

4.39. 组合总和 给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target ,找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 ,并以列表形式返回。你可以按 任意顺序 返回这些组合。 candidates 中的 同一个 数字可以 无限制…

【计算机网络篇】数据链路层(4.2)可靠传输的实现机制

文章目录 🍔可靠传输的实现机制⭐停止 - 等待协议🗒️注意 🔎停止 - 等待协议的信道利用率🗃️练习题 ⭐回退N帧协议🎈回退N帧协议的基本工作流程🔎无传输差错的情况🔎超时重传的情况&#x1f5…

GitHub开源项目权限管理-使用账号和个人令牌访问

1.打开后台账号设置 2.找到左下角的Developer settings 3.找到Personal access tokens 的 Tokens(classic) 4.选择创建新证书 5.填写证书信息 6.点击生成证书,复制证书并且保存起来(血泪教训,证书只会在创建时显示一次,以后就再也…

篮球论坛系统的设计与实现|Springboot+ Mysql+Java+ B/S结构(可运行源码+数据库+设计文档)

本项目包含可运行源码数据库LW,文末可获取本项目的所有资料。 推荐阅读100套最新项目持续更新中..... 2024年计算机毕业论文(设计)学生选题参考合集推荐收藏(包含Springboot、jsp、ssmvue等技术项目合集) 目录 1. …

iOS UIFont-实现三方字体的下载和使用

UIFont 系列传送门 第一弹加载本地字体:iOS UIFont-新增第三方字体 第二弹加载线上字体:iOS UIFont-实现三方字体的下载和使用 前言 在上一章我们完成啦如何加载使用本地的字体。如果我们有很多的字体可供用户选择,我们当然可以全部使用本地字体加载方式,可是这样就增加了…

SpringBoot3任务处理

目录 1.异步任务 无返回值异步任务 效果 有返回值异步任务 效果 2.定时任务 效果 3.邮件任务 获取授权码 加入依赖 配置文件 纯文本邮件 效果 复杂邮件 效果 1.异步任务 Async注释: SpringBoot中的异步调用,可以写在类上或方法上&#…

如何选择指纹浏览器?盘点好用是防关联浏览器

在网络世界中,保护您的在线隐私和安全非常重要。反检测浏览器是专门为此诞生的工具,旨在通过更改浏览器指纹来帮助您做到这一点,它们使网站、广告商和其他人很难跟踪您的在线行为。 一、什么是反检测浏览器? 您是否想过网站如何检…

PCD3012五通道高功率因数LED控制芯片,集成700V高压MOSFET 低THD 外围极少元件

概述 PCD 3012B 是一款五段低 THD 、高功率因数 LED 线性恒流控制芯片,芯片集成了 700V 高压 MOSFET ,采用独特创新的器件工艺技术,具有优越的抗雪崩击穿及浪涌能力,在外围无保护器件时可通过650V 雷击浪涌测试,内置…

实验7 内置对象response

编写代码&#xff0c;掌握request、response的用法。【参考课本4.6.2】 三、源代码以及执行结果截图&#xff1a; input.jsp <% page language"java" contentType"text/html; charsetutf-8" pageEncoding"utf-8"%> <!DOCTYPE html>…

重学SpringBoot3-SpringBoot可执行JAR的原因

更多SpringBoot3内容请关注我的专栏&#xff1a;《SpringBoot3》 期待您的点赞&#x1f44d;收藏⭐评论✍ 重学SpringBoot3-SpringBoot可执行JAR的原因 Spring Boot可执行JAR的结构打包运行JAR 包内部结构 工作原理优点总结 Spring Boot 的一个核心特性是它的可执行 JAR&#x…

在word中显示Euclid Math One公式的问题及解决(latex公式,无需插件)

问题&#xff1a;想要在word中显示形如latex中的花体字母 网上大多解决办法是安装Euclid Math One。安装后发现单独的符号插入可行&#xff0c;但是公式中选择该字体时依然显示默认字体。 解决办法&#xff1a;插入公式后&#xff0c;勾选左上角的latex 在公式块中键入latex代码…

在宝塔面板中,为自己的云服务器安装SSL证书,为所搭建的网站启用https(主要部分攻略)

前提条件 My HTTP website is running Nginx on Debian 10&#xff08;或者11&#xff09; 时间&#xff1a;2024-3-28 16:25:52 你的网站部署在Debain 10&#xff08;或者11&#xff09;的 Nginx上 安装单域名证书&#xff08;默认&#xff09;&#xff08;非泛域名&#xf…

Tensorflow2.0笔记 - metrics做损失和准确度信息度量

本笔记主要记录metrics相关的内容&#xff0c;详细内容请参考代码注释&#xff0c;代码本身只使用了Accuracy和Mean。本节的代码基于上篇笔记FashionMnist的代码经过简单修改而来&#xff0c;上篇笔记链接如下&#xff1a; Tensorflow2.0笔记 - FashionMnist数据集训练-CSDN博…

Codeforces Round 937 (Div. 4)

A. Stair, Peak, or Neither?&#xff08;模拟&#xff09; #include<iostream> using namespace std;int main(){int t;scanf("%d", &t);int a, b, c;while(t--){scanf("%d%d%d", &a, &b, &c);if(a < b && b < c) p…

(免费分享)基于微信小程序电影院购票系统带论文

基于小程序的电影院购票管理系统【含报告】&#xff1a;前端 vue、elementui、小程序&#xff0c;后端 maven、springboot、springmvc、spring、mybatis&#xff0c;角色分为管理员、用户&#xff1b;集成小程序浏览电影&#xff0c;购票等功能于一体的系统。 目录 摘要 I Ab…

fpga 通过axi master读写PS侧DDR的仿真和上板测试

FPGA和ARM数据交互是ZYNQ系统中非常重要的内容。PS提供了供FPGA读写的AXI-HP接口用于两者的高速通信和数据交互。一般的&#xff0c;我们会采用AXI DMA的方式去传输数据&#xff0c;DMA代码基本是是C编写&#xff0c;对于FPGA开发者来说不利于维护和debug。本文提供一种手写AXI…

系统分析师-数学与经济管理

系统架构设计师 系统架构设计师-软件开发模型总结 文章目录 系统架构设计师前言一、最小生成树二、最短路径三、网络与最大流量四、不确定型决策 前言 数学是一种严谨、缜密的科学&#xff0c;学习应用数学知识&#xff0c;可以培养系统架构设计师的抽象思维能力和逻辑推理能…

【WebJs 爬虫】逆向进阶技术必知必会

前言 在数字化时代&#xff0c;网络爬虫已成为一种强大的数据获取工具&#xff0c;广泛应用于市场分析、竞争对手研究、舆情监测等众多领域。爬虫技术能够帮助我们快速、准确地获取网络上的海量信息&#xff0c;为决策提供有力支持。然而&#xff0c;随着网络环境的日益复杂和…