首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

RaisedButton vs ElevatedButton、FlatButton vs TextButton和OutlineButton vs OutlinedButton

RaisedButton vs ElevatedButton

基础概念:

  • RaisedButtonElevatedButton 都是用于创建具有凸起效果的按钮,通常用于 Material Design 风格的应用程序。

优势:

  • RaisedButton 是较早的实现方式,简单易用。
  • ElevatedButton 是更新后的组件,提供了更多的自定义选项和更好的性能。

类型:

  • RaisedButton:简单的凸起按钮。
  • ElevatedButton:支持阴影和背景颜色的自定义,提供了更好的视觉效果。

应用场景:

  • RaisedButton:适用于简单的按钮需求。
  • ElevatedButton:适用于需要更多自定义和高级视觉效果的场景。

问题与解决方法:

  • 问题:为什么 ElevatedButton 比 RaisedButton 更好?
    • 原因:ElevatedButton 提供了更多的自定义选项,如阴影和背景颜色,使得按钮看起来更现代和高级。
    • 解决方法:如果需要更高级的按钮效果,建议使用 ElevatedButton。

FlatButton vs TextButton

基础概念:

  • FlatButtonTextButton 都是用于创建扁平化风格的按钮,通常用于简洁的设计。

优势:

  • FlatButton:提供了平滑的按下效果,适合需要视觉反馈的场景。
  • TextButton:更加简洁,适用于不需要额外视觉效果的场景。

类型:

  • FlatButton:带有平滑按下效果的扁平按钮。
  • TextButton:纯文本按钮,没有额外的背景或阴影。

应用场景:

  • FlatButton:适用于需要用户感知到按钮被按下的场景。
  • TextButton:适用于需要极简设计的场景。

问题与解决方法:

  • 问题:为什么 TextButton 比 FlatButton 更简洁?
    • 原因:TextButton 没有额外的背景或阴影,只有纯文本,使得界面更加简洁。
    • 解决方法:如果追求极简设计,建议使用 TextButton。

OutlineButton vs OutlinedButton

基础概念:

  • OutlineButtonOutlinedButton 都是用于创建带有轮廓的按钮,通常用于需要区分主次按钮的场景。

优势:

  • OutlineButton:提供了清晰的轮廓,适用于需要区分主次按钮的场景。
  • OutlinedButton:通常是更新后的组件,提供了更多的自定义选项。

类型:

  • OutlineButton:带有轮廓的按钮,通常用于次要操作。
  • OutlinedButton:带有轮廓的按钮,支持更多的自定义选项。

应用场景:

  • OutlineButton:适用于需要区分主次按钮的场景。
  • OutlinedButton:适用于需要更多自定义和高级视觉效果的场景。

问题与解决方法:

  • 问题:为什么 OutlinedButton 比 OutlineButton 更灵活?
    • 原因:OutlinedButton 提供了更多的自定义选项,如颜色、边框宽度等,使得按钮更加灵活。
    • 解决方法:如果需要更多的自定义选项,建议使用 OutlinedButton。

示例代码

以下是 Flutter 中使用这些按钮的示例代码:

代码语言:txt
复制
import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(title: Text('Button Examples')),
        body: Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: [
              ElevatedButton(
                onPressed: () {},
                child: Text('ElevatedButton'),
              ),
              FlatButton(
                onPressed: () {},
                child: Text('FlatButton'),
              ),
              OutlinedButton(
                onPressed: () {},
                child: Text('OutlinedButton'),
              ),
            ],
          ),
        ),
      ),
    );
  }
}

参考链接

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Flutter 中FlatButton的替代方案

最新版本的Flutter已将FlatButton标记为过时,我们可以使用 TextButton 或 ElevatedButton 来进行替代,FlatButton 与替代组件的参数会有差异。...首先来看下TextButton,TextButton 用于显示文本按钮,与 FlatButton 相似,但默认为透明背景,更符合 Material Design 的风格。...以下是一个使用 ElevatedButton 的示例: ElevatedButton( onPressed: () { // 处理按钮点击事件 }, child: Text('Click...me'), ); 需要注意的是,TextButton 和 ElevatedButton 都需要提供一个 onPressed 回调来处理按钮的点击事件。...TextButton 和 ElevatedButton 只能提供有限的自定义选项,如果需要更多的自定义选项,例如设置按钮的形状或阴影等,可以使用 FlatButton 的替代品 OutlinedButton

64020
  • Flutter 小技巧之 ButtonStyle 和 MaterialStateProperty

    大家是否还记得去年 Flutter 2.0 发布的时候,除了空安全之外 ,还更新了一系列关于控件的 breaking change,其中就有 FlatButton 被标志为弃用,需要替换成 TextButton...为什么 TextButton 会和 MaterialStateProperty 扯到一起?...相信大家当初在从 Flutter 1 切换到 Flutter 2 的时候,应该都有过这样一个疑问: 为什么 FlatButton 和 RaisedButton 会被弃用替换成 TextButton 和...随着 Web 和 Desktop 平台的发布,原本的 FlatButton 无法很好满足新的 UI 交互需要,例如键鼠交互下的 hovered ,所以 TextButton 开始使用 MaterialStateProperty...事实上 TextButton 、 ElevatedButton 和 OutlinedButton 都是 ButtonStyleButton 的子类,他们都会遵循以下的原则: final ButtonStyle

    2.8K40

    【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程

    数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈章节内容【02】写一个注册页面以及配置打包选项打包安卓apk测试开发背景上次我们安装了flutter 配置了vs-code...扩展知识在 Flutter 和 Dart 中,const 和非 const(或 final 和普通变量)有着重要的区别,它们主要用于优化性能和管理不可变数据。...和ElevatedButton是两种不同风格的按钮组件,它们之间的主要区别体现在视觉表现和设计风格上。...**ElevatedButton**特点:具有阴影效果,看起来像是浮起的。适用场景:适用于大多数需要突出显示的按钮。2. **OutlinedButton**特点:有边框但没有填充色,看起来更简洁。...**TextButton**特点:仅有文本,无任何背景或边框。适用场景:适用于文字为主且不需要额外视觉强调的按钮。4. **IconButton**特点:专门用于显示图标,可以设置图标大小和颜色。

    8110

    深入小程序系列之二、Flutter 和小程序混编

    (version 2019.3.3) [✓] VS Code: is fully installed. (version 1.42.1) [!]...flutter 需要依赖本地安装对应的 iOS,Android 开发工具,即需要安装 Xcode 和 AndroidStudio。具体安装使用方法这里不赘述。...(Channel stable, v1.12.13+hotfix.8, on Mac OS X 10.15.3 19D76, locale zh-Hans-CN) VS Code: is fully installed...Mop.instance.initialize这里需要用到 sdkkey 和 secret。可以直接在https://mp.finogeeks.com免费注册获取。...mop-flutter-demo 相关文章:凡泰极客私有云小程序技术 关于凡泰极客:帮助金融机构乃至任何希望拥有类似技术的其他行业机构,建立“碎片”的集散地、降低管理成本、提高研发效能,形成自己的数字化生态、与客户和伙伴建立真正的数字化连接

    1.7K20

    使用 GoRouter 进行 Flutter 导航:Go 与 Push

    在使用 GoRouter 进行声明式路由时,深入解释 Go 和 Push 的区别 go_router 包是用于声明式路由的流行包。...它基于 Navigator 2.0 API,目的是使用声明式路由来降低复杂性,无论您的目标平台是什么(移动、Web、桌面),处理来自 Android、iOS 和 Web 的深度和动态链接,以及其他一些导航相关的场景...---- 这意味着一旦我们关闭模态页面,我们将导航回: 如果我们使用go,返回主页, 如果我们使用push,返回详细信息页面 这是一个显示此行为的简短演示: go vs push 路由:动画视频 最后附上完整源代码...), const SizedBox( height: 32, ), ElevatedButton...), const SizedBox( height: 32, ), ElevatedButton

    2.6K10

    Dart中的const,Flutter,Dart,React Native

    关于 Flutter 应用 创建应用程序 安装 Flutter 后,创建应用非常简单,在终端输入 flutter create [app_name] 命令,或在 VS Code 命令面板中选择“Flutter...应用程序可以通过命令行以及任何编辑器轻松开发,这些编辑器来自受支持的 IDE,如 VS Code,Android Studio 或 IntelliJ。 使用哪种 IDE 取决于用户的偏好。...VS Code 提供了更轻松的开发体验,因此它的启动速度往往比 Android Studio / IntelliJ 更快。...material.dart'; void main() {  runApp(   Container(color: Colors.lightBlue)  ); } 运行结果为填充屏幕的浅蓝色容器部件: 无状态 VS...在此示例中,FlatButton 部件和 Text 部件将绘制到屏幕上。 Text 部件从其状态开始时会有默认的 String。

    6300

    第130期:flutter的状态组件和状态管理

    状态组件 VS 无状态组件 这两个概念在react中我们非常熟悉,状态组件内部定义的有自己的属性,可以用来控制不同状态下展示不同的界面。无状态组件则只负责展示界面,没有其他的多余功能。...状态组件件由两个类实现:StatefulWidget的子类和State的子类。 2. state类包含组件的可变状态和组件的build()方法。 3....此示例有两个State对象,_ParentWidgetState和_TapboxCState。 _ParentWidgetState对象: 管理活动状态_active。...最后 在组件的状态管理中,我们使用的最多的交互场景大抵是表单相关的内容,相关的组件有: Form FormField Checkbox DropdowmButton TextButton FloatingActionButton...和web开发使用的场景差不多~ 我们在进行组件的封装时,本质上是在开发一个自定义的状态组件~

    1.5K21

    扫码

    添加站长 进交流群

    领取专属 10元无门槛券

    手把手带您无忧上云

    扫码加入开发者社群

    相关资讯

    热门标签

    活动推荐

      运营活动

      活动名称
      广告关闭
      领券