如何在 React Native 中添加搜索栏?

在本文中,我们将在 React-Native 中添加搜索功能。这可以看作是 React native flatlist 组件 的延续。在上一篇文章中,我们使用 Flatlist 组件创建了一个平面列表。现在,让我们使用 SearchBar 组件为其添加搜索功能。要向你的 Flatlist 添加 SearchBar,基本语法如下所示。让我们先看一个演示视频,了解一下我们要开发的内容。

演示视频

语法


实现方法

上述语法在你的应用程序中添加了一个标准的特定于平台的搜索栏,通常是一个带有输入空间的矩形框。在滚动到实现部分时,你会注意到我们添加了一个 INLINECODE784f1c32(占位符)属性,它指定了搜索栏打开时显示的默认值。此外,为了让搜索栏具有浅色主题和圆角边缘,我们需要设置以下属性。现在,当我们想要搜索一个值时,我们希望显示在搜索栏中输入的那个值,为此我们从 INLINECODE51a6e088 类中添加一个对象搜索值(search value),默认情况下它是空的,但当我们输入时,它会被修改并存储我们当前的文本输入。由于搜索值是自定义的,我们关闭了自动更正选项,并在搜索字段中输入文本后立即调用搜索函数。

SearchBar 中的属性

属性

描述

cancelButtonProps

它指定传递给“取消”按钮的各种属性,可以自定义其颜色、按钮样式、文本颜色等。

cancelButtonTitle

它用于自定义位于右侧的取消按钮的标题。

cancelIcon

此属性允许你覆盖 Icon 属性或使用自定义组件,此外,这特定于 Android 平台。

clearIcon

此属性允许你覆盖 Icon 属性或使用自定义组件。可以使用 INLINECODE4778a585 或 INLINECODE1332ef7a 等值来隐藏图标。

containerStyle

可以使用此属性对 SearchBar 的容器进行样式设置。

inputContainerStyle

此属性用于设置输入文本的容器的样式。

inputStyle

此属性用于设置输入文本的样式。

leftIconContainerStyle

设置左侧图标容器的样式。

lightTheme

此属性将主题更改为浅色主题。

loadingProps

此属性传递给 ActivityIndicator。

onCancel

当按下取消按钮 (iOS) 或返回图标 (Android) 时,此属性让回调触发。

onChangeText

此属性调用文本更改时应触发的方法。

onClear

这指定了清除输入时要触发的方法。

placeholder

此属性用于设置占位符文本。

placeholderTextColor

此属性设置占位符文本的颜色。

platform

此属性指定搜索栏的外观和感觉。可供选择的值有 "default"、"IOS"、"Android"。

rightIconContainerStyle

我们可以使用此属性设置右侧图标容器的样式。

round

此属性用于将 TextInput 样式更改为圆角。

searchIcon

此属性允许你覆盖 Icon 属性或使用自定义组件。使用 INLINECODE3ef37fe5 或 INLINECODE2ae0bfe2 来隐藏图标。

showCancel

如果将此属性设置为 true,即使在失去焦点事件后,取消按钮也将保持可见。

showLoading

此属性显示加载中的 ActivityIndicator 效果。

underlineColorAndroid

此属性指定除默认颜色之外的透明下划线颜色。## 分步实现

步骤 1: 创建 React Native 项目

现在,使用以下命令创建一个项目。

npx create-expo-app ****app-name**** --template

> 注意:将 app-name 替换为你的应用程序名称,例如:react-native-demo-app

接下来,系统可能会要求你 选择一个模板。根据你的偏好选择一个,如下图所示。我选择了 空白(blank) 模板,因为它会生成 一个最小的应用程序,就像 JavaScript 中的空白画布一样干净

!image

它完成了项目创建并显示一条消息:“Your Project is ready!”(你的项目已准备就绪!),如下图所示。

!<a href="https://media.geeksforgeeks.org/wp-content/uploads/20250430102701965702/Completionofreactnativeproject.png">image

现在进入你的项目文件夹,即 react-native-demo

cd app-name

项目结构:

!<a href="https://media.geeksforgeeks.org/wp-content/uploads/20250430102911569961/folderstructureofreactnative_project.png">image

步骤 2:运行 应用程序

使用以下命令启动服务器。

npx expo start

然后,应用程序将显示一个二维码。

  • 对于 Android 用户,
  • 对于 Android 模拟器,按文中提到的“a”
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。如需转载,请注明文章出处豆丁博客和来源网址。https://shluqu.cn/22122.html
点赞
0.00 平均评分 (0% 分数) - 0