首页 > 其他分享 >如何使用SearchBar组件

如何使用SearchBar组件

时间:2024-08-12 21:52:43浏览次数:7  
标签:const 介绍 如何 搜索 组件 SearchBar 属性

文章目录


我们在上一章回中介绍了"Material3中的IconButton"相关的内容,本章回中将介绍SearchBar组件.闲话休提,让我们一起Talk Flutter吧。

在这里插入图片描述

1. 概念介绍

我们在本章回中介绍的SearchBar是指搜索框,通常位于某个页面的最上方,通过它来搜索页面中的内容。该组件也是Material3中引入的新组件,本章回中将详细介绍
它的使用方法。

2. 使用方法

和其它的组件一样,SearchBar提供了相关的属性来控制自己,下面是该组件中常用的属性:

  • hintText属性: 用来控制搜索框中的提示内容;
  • leading属性: 用来控制搜索框最左侧显示的内容;
  • trailing属性: 用来控制搜索框最右侧显示的内容;
  • backgroundColor属性: 用来控制搜索框的背景颜色;
  • padding属性:用来控制搜索框中内容与边框的边距;
  • shape属性: 用来控制搜索框的形状,默认是圆角矩形;
  • onTap属性:它是方法类型,点击搜索框时会回调该方法;
  • onChanged属性:它是方法类型,搜索框中输入的内容变化会回调该方法;
    除了上面介绍的这些属性外,搜索框还有其它的属性,我们就不一一介绍了,大家可以参考官方文档。搜索框的用法和我们之前介绍过的TextField组件的用法类似,其
    实官方没有提供该组件前,我们就是拿TextField组件来实现搜索框。

3. 代码与效果

3.1 示例代码

介绍完搜索框的常用属性后,我们通过具体的示例代码来演示它的使用方法。我们在代码中关键位置添加了注释,方便大家理解代码。

Column(
  children: [
    const Padding(padding: EdgeInsets.only(bottom: 16),),
    const SearchBar(hintText:"Default SearchBar", ),
    const Padding(padding: EdgeInsets.only(bottom: 16),),
    const SearchBar(
      hintText:"add Icon SearchBar",
      leading: Icon(Icons.earbuds),
      trailing: [
        Icon(Icons.mic),
        Icon(Icons.search_rounded),
      ]
    ),
    const Padding(padding: EdgeInsets.only(bottom: 16),),
    SearchBar(
      hintText: "custom SearchBar",
      //修改背景颜色
      backgroundColor: const MaterialStatePropertyAll<Color>(Colors.grey),
      //控制内容与搜索框的边距
      padding:const MaterialStatePropertyAll<EdgeInsets>(
        EdgeInsets.symmetric(horizontal: 16),
      ),
      //修改形状
      shape: MaterialStatePropertyAll<OutlinedBorder>(
        RoundedRectangleBorder(borderRadius: BorderRadius.circular(80)),
      ),
      onTap: (){debugPrint("onTap:");},
      onChanged: (value){debugPrint("onChanged: $value");},
    )
  ],
),

3.2 运行效果

我们在上面小节中的示例代码中一共实现了三个搜索框,第一个是默认的搜索框,第二个搜索框添加了图标,第三个搜索框修改了形状和背景颜色。三个搜索框按列显示,
方便大家对比不同的颜色与形状。下面是程序的运行效果图,请大家参考:

4. 内容总结

最后,我们对本章回的内容做一个全面的总结:

  • 搜索框是Material3中新引入的组件,主要用来实现搜索功能;
  • 搜索框提供了相关的属性来控制自己的外观形状和点击事件;
  • 搜索框的用法类似之前介绍过和TextField组件;
    看官们,与"SearchBar组件"相关的内容就介绍到这里,欢迎大家在评论区交流与讨论!

标签:const,介绍,如何,搜索,组件,SearchBar,属性
From: https://blog.csdn.net/talk_8/article/details/141137708

相关文章

  • Java实现微信手机号更新:如何在后台同步客户信息
    文章目录接口说明:更新客户微信手机号码核心逻辑:获取微信手机号并更新客户信息总结在现代数字化生活中,手机号码是我们与外界联系的重要方式之一。特别是微信,作为中国最广泛使用的社交和支付平台,其绑定的手机号更是至关重要。在开发微信相关功能时,经常需要处理用户手......
  • java面试题:CPU飙高问题如何排查
    在Java面试中,关于CPU飙高问题的排查是一个常见的考点。以下是针对这一问题的详细排查步骤和建议:一、初步诊断1.查看系统监控:使用系统监控工具(如Windows的任务管理器、Linux的top或htop命令)查看当前CPU使用情况,找出哪个Java进程占用了大量CPU资源。注意观察CPU使用率的波......
  • 如何在栈上动态分配内存?
    alloca是一个非标准的函数,用于在栈上分配内存。与malloc不同,alloca分配的内存会在当前函数返回时自动释放,不需要也不能显式地调用free来释放它。这使得alloca在需要快速分配和释放小块内存时非常方便,但也带来了一些使用上的风险。1.基本用法#include<iostream>#in......
  • 通信组件 --- netlink 原理及应用
    什么是netlinknetlink是一种基于网络的通信机制,允许内核内部、内核与用户态应用之间甚至用户态应用之间进行通信;netlink的主要作用是内核与用户态之间通信;它的思想是,基于BSD的socket使用网络框架在内核和用户态之间进行通信;为什么要有netlink内核中有其他一些方法可以实现用户......
  • 从AlphaGo到AlphaPong:AI乒乓球机器人将如何改变乒乓球竞技?
    在人工智能领域,谷歌DeepMind的AlphaGo曾以其超凡的围棋能力震惊了世界。而如今,DeepMind又将其技术延伸到了乒乓球领域,推出了乒乓球机器人,被网友戏称为“AlphaPong”。这一机器人使用ABB的IRB1100机械手臂,能够与普通人进行激烈的乒乓对抗。那么,中国在乒乓球领域的传统优势是......
  • [AI]YOLO如何训练对象检测模型(详细)
    一、我们为什么要训练YOLO?        尽管官方的预训练模型已经能够识别一些最基本的物体了,但是我们想让模型识别一些特殊的模型或者我们想给一些物体添加权重,让模型更倾向于去把这个物体框出来,官方的底模是做不到的。我们在这时就不得不对底模重新进行训练了。通过训练......
  • windows C++-C++/WinRT 中创建组件和事件(下)
    跨ABI的简单信号如果无需连同事件传递任何形参或实参,则可以定义自己的简单Windows运行时委托类型。以下示例展示Thermometer运行时类的更简易版本。它声明名为SignalDelegate的委托类型,然后使用该类型来引发信号类型事件,而不是具有参数的事件。//ThermometerWRC.i......
  • 复苏的魔女遭遇VGCore.dll缺失危机:如何快速修复游戏启动难题?
    复苏的魔女遭遇VGCore.dll缺失危机时,确实会导致游戏无法正常启动。以下是一些快速修复此问题的步骤和建议:一、确认问题首先,确保错误信息确实是由于VGCore.dll文件缺失引起的。通常,游戏在尝试启动时会在屏幕上显示一条错误消息,明确指出缺少的DLL文件名。二、下载并替换缺失......
  • 安防监控/视频汇聚平台EasyCVR如何配置,实现默认获取设备的子码流?
    安防视频监控/视频集中存储/云存储/磁盘阵列EasyCVR平台基于云边端一体化架构,兼容性强、支持多协议接入,包括国标GB/T28181协议、部标JT808、GA/T1400协议、RTMP、RTSP/Onvif协议、海康Ehome、海康SDK、大华SDK、华为SDK、宇视SDK、乐橙SDK、萤石云SDK等。有用户反馈,选用HIKSDK......
  • 如何解决因内存不足导致的 iPhone 白苹果问题:原因解析与修复教程
    引言在使用iPhone的过程中,许多用户可能遇到过“白苹果”现象,即设备启动时只显示白色的Apple标志,却无法进入系统。这种情况通常让人感到困惑和担忧,尤其是当重要数据似乎无法访问时。本文将探讨内存不足导致iPhone白苹果的原因,并提供详细的修复教程,帮助你恢复设备正常运行......