返回顶部
首页 > 资讯 > 精选 >Flutter如何实现Text完美封装
  • 355
分享到

Flutter如何实现Text完美封装

2023-06-21 20:06:48 355人浏览 八月长安
摘要

这篇文章主要介绍“Flutter如何实现Text完美封装”,在日常操作中,相信很多人在Flutter如何实现Text完美封装问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Flutter如何实现Text完美封装

这篇文章主要介绍“Flutter如何实现Text完美封装”,在日常操作中,相信很多人在Flutter如何实现Text完美封装问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Flutter如何实现Text完美封装”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

使用惯了Android的布局,对Flutter的组件和布局简直深恶痛绝啊,于是下定决心,一点一点封装Flutter的基础组件,今天封装的是Text组件,自认为封装的非常完美,完全可以用android布局的写法来写Text了,而且可以直接设置margin,padding,color,font,等等所有的属性,只需要一行代码就能实现,废话不多说,先看效果

Flutter如何实现Text完美封装

我们可以看到,颜色,边框,圆角通通都设置完成了,还有其他的属性,就不都一一展示了,实现这个效果需要哪些代码呢?看下面

TextView(            "自定义textview自定义textview自定义textview自定义textview自定义textview",            backgroundColor: Colors.red,            textColor: Colors.white,            padding: 10,            cornerRadius: 10,            borderColor: Colors.yellow,            borderWidth: 1,            marginTop: 5,            singleLine: false,          )

是的,跟android布局的方法完全一样,再也不用嵌套container再也不要写什么style了!!!

具体的封装实体类如下,为了纪念android,我叫他TextView,具体属性参考代码里面,应该都很简单易懂吧

import 'package:flutter/material.dart'; class TextView extends StatelessWidget {  double? padding = 0;  double? margin = 0;  double? paddingLeft = 0;  double? paddingRight = 0;  double? paddingTop = 0;  double? paddingBottom = 0;  double? marginLeft = 0;  double? marginRight = 0;  double? marginTop = 0;  double? marginBottom = 0;  double? fontSize = 0;  Color? textColor = Colors.black;  Color? backgroundColor = Colors.white;  AlignmentGeometry? alignment = Alignment.center;  double? cornerRadius = 0;  double? borderWidth = 0;  Color? borderColor = Colors.white;  String content = "";  bool? singleLine = false;  bool? isBold = false;   TextView(this.content,      {this.textColor,      this.backgroundColor,      this.padding,      this.paddingTop,      this.paddingBottom,      this.paddingRight,      this.paddingLeft,      this.cornerRadius,      this.borderColor,      this.borderWidth,      this.marginBottom,      this.marginLeft,      this.marginRight,      this.marginTop,      this.margin,      this.fontSize,      this.singleLine,      this.isBold}) {    if (padding != null) {      if (padding != null && padding! > 0) {        paddingLeft = padding;        paddingRight = padding;        paddingBottom = padding;        paddingTop = padding;      }    }     if (margin != null) {      if (margin != null && margin! > 0) {        marginLeft = margin;        marginTop = margin;        marginRight = margin;        marginBottom = margin;      }    }  }   @override  Widget build(BuildContext context) {    return Container(      margin: EdgeInsets.fromLTRB(this.marginLeft ?? 0, this.marginTop ?? 0,          this.marginRight ?? 0, this.marginBottom ?? 0),      decoration: new BoxDecoration(        border: new Border.all(            width: this.borderWidth ?? 0,            color: this.borderColor ?? Colors.white),        color: this.backgroundColor,        borderRadius:            new BorderRadius.all(new Radius.circular(this.cornerRadius ?? 0)),      ),      padding: EdgeInsets.fromLTRB(this.paddingLeft ?? 0, this.paddingTop ?? 0,          this.paddingRight ?? 0, this.paddingBottom ?? 0),      child: Text(        content,        style: TextStyle(            color: this.textColor,            fontSize: this.fontSize ?? 14,            fontWeight:                this.isBold ?? false ? FontWeight.bold : FontWeight.nORMal,            overflow: this.singleLine ?? false                ? TextOverflow.ellipsis                : TextOverflow.clip),      ),    );  }}

到此,关于“Flutter如何实现Text完美封装”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

--结束END--

本文标题: Flutter如何实现Text完美封装

本文链接: https://lsjlt.com/news/300647.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Flutter如何实现Text完美封装
    这篇文章主要介绍“Flutter如何实现Text完美封装”,在日常操作中,相信很多人在Flutter如何实现Text完美封装问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Flutter如何实现Text完美封装...
    99+
    2023-06-21
  • Flutter实现Text完美封装
    使用惯了android的布局,对Flutter的组件和布局简直深恶痛绝啊,于是下定决心,一点一点封装Flutter的基础组件,今天封装的是Text组件,自认为封装的非常完美,完全可以...
    99+
    2024-04-02
  • Flutter实现矩形取色器的封装
    前言 最近看插件库上少有的取色器大都是圆形的或者奇奇怪的的亚子,所以今天做两个矩形的颜色取色器 提示:以下是本篇文章正文内容,下面案例可供参考 一、BarTypeColorPicke...
    99+
    2024-04-02
  • Flutter学习LogUtil封装与实现实例详解
    目录一. 为什么要封装打印类二. 需要哪些类三. 打印输出的抽象类四. 格式化日志内容格式化堆栈堆栈裁切工具类格式化堆栈信息格式化JSON五. 需要用到的常量六. 为了控制多个打印器...
    99+
    2024-04-02
  • Ajax如何实现封装
    小编给大家分享一下Ajax如何实现封装,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!之前是点击按钮取出新闻,现在要实现每隔一段事...
    99+
    2024-04-02
  • C#如何实现SQL封装
    这篇文章给大家分享的是有关C#如何实现SQL封装的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。SQLHelper.as , 代码如下:using System; usi...
    99+
    2024-04-02
  • Vue如何实现Dialog封装
    本篇内容主要讲解“Vue如何实现Dialog封装”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Vue如何实现Dialog封装”吧!在写业务的时候很常见的一个场景...
    99+
    2024-04-02
  • js如何实现封装jQuery
    这篇文章将为大家详细讲解有关js如何实现封装jQuery,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。本文js实现了下面jquery的几种方法,我将它分为8个小目标实现$(".box1"...
    99+
    2023-06-14
  • Flutter 如何封装文本输入框组件
    目录UI组件封装的考虑要点文本输入框接口定义代码实现组件使用踩坑记录总结UI组件封装的考虑要点 封装一个 UI 组件,通常需要考虑下面这三个点: 接口如何定义:即组件接收...
    99+
    2024-04-02
  • 如何用Vue实现Dialog封装
    这篇文章主要讲解了“如何用Vue实现Dialog封装”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何用Vue实现Dialog封装”吧!在写业务的时候很常见...
    99+
    2024-04-02
  • 如何在PHP中实现封装性
    封装性是面向对象编程的一个重要概念,它可以提高代码的可维护性和可复用性。在 PHP 中,我们可以通过以下几个方法来实现封装性。访问控制PHP 提供了三种访问修饰符来实现封装性:public、protected 和 private。publi...
    99+
    2023-10-21
    PHP 实现 (Implementation) 封装性 (Encapsulation)
  • vue如何实现axios二次封装
    这篇文章主要介绍“vue如何实现axios二次封装”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“vue如何实现axios二次封装”文章能帮助大家解决问题。axiosaxios 是一个基于 promi...
    99+
    2023-07-04
  • C++ map与set封装如何实现
    今天小编给大家分享一下C++ map与set封装如何实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一、前情回顾...
    99+
    2023-07-05
  • Flutter如何完成路由拦截,实现权限管理
    目录相关文章 fluro 路由拦截思路 定义路由时拦截 跳转时拦截 之前几篇介绍了 fluro 的路由管理和转场动画,本篇介绍如何完成路由拦截,进而实现权限管理。“此路是我开,此树...
    99+
    2024-04-02
  • Flutter中网络框架dio的二次封装怎么实现
    这篇文章主要介绍“Flutter中网络框架dio的二次封装怎么实现”,在日常操作中,相信很多人在Flutter中网络框架dio的二次封装怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Flutter中网...
    99+
    2023-06-30
  • 如何将原生JDBC封装实现CRUD
    这篇文章将为大家详细讲解有关如何将原生JDBC封装实现CRUD,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。将原生JDBC封装实现CRUD1、项目结构pom.xml加入依赖2、思路初步加载数据库驱动连接数...
    99+
    2023-06-14
  • vue如何实现axios的二次封装
    这篇文章主要介绍“vue如何实现axios的二次封装”,在日常操作中,相信很多人在vue如何实现axios的二次封装问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vue如何实现axios的二次封装”的疑惑有所...
    99+
    2023-07-04
  • 如何实现Flutter动画
    这篇文章主要为大家展示了“如何实现Flutter动画”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何实现Flutter动画”这篇文章吧。动画中的三大核心为了能够实现动画效果,必须提供下面的三个...
    99+
    2023-06-04
  • java如何实现socket连接方法封装
    目录Java实现socket连接技巧Java Socket的封装1 客户端Socket API要点2 服务端Socket API要点常见问题Java使用socket实现一个多线程we...
    99+
    2024-04-02
  • 如何使用PHP实现完美的直播功能?
    近年来,直播功能已经成为了互联网应用的重要一环,它为用户提供了更加丰富的社交互动方式,也让许多行业拓展了新的业务形态。而 PHP 作为一门常用的 Web 编程语言,对于实现直播功能也有着不少的优点。本文旨在针对 PHP 程序员,介绍如何使用...
    99+
    2023-05-23
    实现方法 直播功能 PHP直播
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作