华为仓颉鸿蒙Next原生UI基础组件Search

打印 上一主题 下一主题

主题 948|帖子 948|积分 2844

提供搜索框组件,用于提供用户搜索内容的输入区域。
子组件

构造函数
init(String, String, Option,Option)



  1. public init(value!: String = "", placeholder!: String = "", icon!: Option<CJResource> = Option.None, controller!: Option<SearchController> = Option.None)
复制代码
创建一个Search组件。
参数名参数范例必填默认值形貌valueString否“”搜索文本值。placeholderString否“”未输入时,搜索框内的提示文本iconOption否Option.None搜索图标路径,默认使用系统搜索图标,支持的图标格式: svg, jpg和png。controllerOption否Option.None搜索框控制器。 函数
searchButton(String)



  1. public func searchButton(text: String): This
复制代码
设置searchButton的图标。
参数名参数范例必填默认值形貌textString是-图标的URI。 placeholderColor(Color)



  1. public func placeholderColor(color: Color): This
复制代码
设置placeHolder的颜色。
参数名参数范例必填默认值形貌colorColor是-设置的目标颜色。 placeholderColor(UInt32)



  1. public func placeholderColor(color: UInt32): This
复制代码
设置placeHolder的颜色。
参数名参数范例必填默认值形貌colorUInt32是-设置的目标颜色。 placeholderFont(Length, FontWeight, FontStyle, String)








  1. public func placeholderFont(        size!: Length = DEFAULT_SIZE.fp,        weight!: FontWeight = FontWeight.W400,        style!: FontStyle = FontStyle.Normal,        family!: String = ""    ): This
复制代码
设置placeHolder的样式。
参数名参数范例必填默认值形貌sizeLength否DEFAULT_SIZE.fpplaceholder的目标大小。weightFontWeight否FontWeight.W400placeholder字体的目标粗细。styleFontStyle否FontStyle.Normalplaceholder字体的目标样式。familyString否“”placeholder字体的样式族。 textFont(Length, FontWeight, FontStyle, String)








  1. public func textFont(        size!: Length = DEFAULT_SIZE.fp,        weight!: FontWeight = FontWeight.W400,        style!: FontStyle = FontStyle.Normal,        family!: String = ""    ): This
复制代码
设置Search组件输入字体的样式。
参数名参数范例必填默认值形貌sizeLength否DEFAULT_SIZE.fp输入框的目标大小。weightFontWeight否FontWeight.W400输入字体的目标粗细。styleFontStyle否FontStyle.Normal输入字体的目标样式。familyString否“”输入字体的样式族。 borderWidth(Length)



  1. public func borderWidth(width: Length): This
复制代码
设置search组件的边界宽度。
参数名参数范例必填默认值形貌widthLength是-search组件边界的宽度。 borderColor(Color)



  1. public func borderColor(color: Color): This
复制代码
设置search组件的边界颜色。
参数名参数范例必填默认值形貌colorColor是-search组件边界的颜色。 borderStyle(BorderStyle)



  1. public func borderStyle(style: BorderStyle): This
复制代码
设置search组件的边界样式。
参数名参数范例必填默认值形貌styleBorderStyle是-search组件边界的样式。 borderRadius(Length)



  1. public func borderRadius(radius: Length): This
复制代码
设置search组件的边界圆角半径。
参数名参数范例必填默认值形貌radiusLength是-search组件边界的圆角半径。 copyOption(Length)



  1. public func copyOption(copyOption: CopyOptions): This
复制代码
设置search组件的复制选项。
参数名参数范例必填默认值形貌copyOptionCopyOptions是-search组件的复制选项。 height(Length)



  1. public func height(value: Length): This
复制代码
设置search组件的高度。
参数名参数范例必填默认值形貌valueLength是-search组件的高度。 枚举分析
CopyOptions
枚举值形貌None不支持复制。InApp支持应用内复制。LocalDevice支持装备内复制。 自定义范例
SearchController
Search组件的控制器,通过它操作Search组件。
构造函数



  1. init()
复制代码
创建一个SearchController对象。
函数



  



  1.    public func caretPosition(carePosition: Int32): Unit
复制代码


  • 设置光标到给定位置。
参数名参数范例必填默认值形貌carePositionInt32是-从字符串开始到光标目标位置的长度。 事件
onSubmit((String) -> Unit)



  1. public func onSubmit(callback: (String)->Unit): This
复制代码
当点击搜索图标、搜索按钮大概按下软键盘搜索按钮时触发。
参数名参数范例形貌callback(String) -> Unit提交搜索内容回调。 onChange((String) -> Unit)



  1. public func onChange(callback: (String)->Unit): This
复制代码
当输入框内搜索内容发生变革时触发。
参数名参数范例形貌callback(String) -> Unit搜索内容变革回调。 onCopy((String) -> Unit)



  1. public func onCopy(callback: (String)->Unit): This
复制代码
当用户将框内内容复制到系统剪切板时触发。
参数名参数范例形貌callback(String) -> Unit组件触发系统剪切板复制操作的回调。 onCut((String) -> Unit)



  1. public func onCut(callback: (String)->Unit): This
复制代码
当用户将框内内容剪切到系统剪切板时触发。
参数名参数范例形貌callback(String) -> Unit组件触发系统剪切板剪切操作的回调。 onPaste((String) -> Unit)



  1. public func onPaste(callback: (String)->Unit): This
复制代码
当用户将系统剪切板内容粘贴到框内时触发。
参数名参数范例形貌callback(String) -> Unit组件触发系统剪切板粘贴操作的回调。 通用属性/通用事件
通用属性:除文本样式外,别的全部支持。
通用事件:全部支持。
示例
  1. @Entry    @Component    class MyView{        @State var changeValue: String = ""        @State var submitValue: String = ""            let controller = SearchController()        func build() {            Flex(FlexParams(direction: FlexDirection.Row, justifyContent: FlexAlign.Center, alignItems: ItemAlign.Center)) {              Text(submitValue)              Text(changeValue)              Search(value: "", placeholder: "Type to search", controller: controller)                .searchButton("Search")                .width(300)                .height(35)                .backgroundColor(0xDDDDDD)                .placeholderColor(0x000000)                .onSubmit({value =>                  submitValue = value                })                .onChange({value =>                  changeValue = value                })                .margin(top: 30)                .id("searchComponent")            }        }    }
复制代码

还没有申请仓颉内测资格的朋友可以看一下下面这篇文章
华为仓颉编程语言内测申请攻略《附带仓颉鸿蒙开辟权限》
如对您有资助,资助点个“在看 、关注” 让更多的人受益~!
技术交换群可加wx“LB-9191” 备注cangjie

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

一给

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表