iis服务器助手广告
返回顶部
首页 > 资讯 > 精选 >怎么用Flutter快速制作一个水印组件
  • 306
分享到

怎么用Flutter快速制作一个水印组件

2023-07-05 02:07:25 306人浏览 独家记忆
摘要

本篇内容介绍了“怎么用Flutter快速制作一个水印组件”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!效果通过child属性将水印叠加给子组

本篇内容介绍了“怎么用Flutter快速制作一个水印组件”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

效果

怎么用Flutter快速制作一个水印组件

通过child属性将水印叠加给子组件

水印组件,既然是组件,就是需要发扬Flutter套娃的精神,通过child属性将水印叠加给子组件。

class Watermark extends StatelessWidget {  const Watermark({Key? key, required this.child}) : super(key: key);  final Widget child;  /// 水印信息  final String waterInfo = '半点橘色 6666';  @override  Widget build(BuildContext context) {    return Stack(      children: [        child,        _createWatermark(),      ],    );  }  /// ....}

waterInfo属性一般情况是获取登录用户信息进行动态写入,在demo中就写死了。

build方法的内容很简单,无非是通过Stack进行堆叠布局,通过createWatermark方法创建水印,放置于子组件的上方。

createWatermark方法

核心内容就在于createWatermark方法。

  /// 创建水印  Widget _createWatermark() {    return IgnorePointer(      child: Column(        children: List.generate(          6,          (index) => Expanded(            child: Row(              children: List.generate(                3,                (index) => Expanded(                  child: Center(                    child: TransfORM.rotate(                      angle: -0.34,                      child: Text(                        waterInfo,                        style: const TextStyle(                          color: Color(0x10000000),                          fontSize: 14,                          decoration: TextDecoration.none,                        ),                      ),                    ),                  ),                ),              ),            ),          ),        ),      ),    );  }

创建水印可以通过横向(Row)和纵向(Column)布局,将水印文本内容渲染在页面中。当然,样式可以随喜爱而定,例如Transform.rotate设置倾斜角度,Color设置文本颜色等。

其中IgnorePointer组件是个重点。

它可以让点击事件穿透容器,直达下层。这样一来即使水印叠加在最顶层,也不会影响到页面手势的操作。

IgnorePointer还有个同胞兄弟AbsorbPointer,它的作用与IgnorePointer相反,会消费掉点击事件,使其无法穿透容器向下传递。

Watermark组件的完整代码

import 'package:flutter/material.dart';/// 水印组件class Watermark extends StatelessWidget {  const Watermark({Key? key, required this.child}) : super(key: key);  final Widget child;  final String waterInfo = '半点橘色 6666';  @override  Widget build(BuildContext context) {    return Stack(      children: [        child,        _createWatermark(),      ],    );  }  /// 创建水印  Widget _createWatermark() {    return IgnorePointer(      child: Column(        children: List.generate(          6,          (index) => Expanded(            child: Row(              children: List.generate(                3,                (index) => Expanded(                  child: Center(                    child: Transform.rotate(                      angle: -0.34,                      child: Text(                        waterInfo,                        style: const TextStyle(                          color: Color(0x10000000),                          fontSize: 14,                          decoration: TextDecoration.none,                        ),                      ),                    ),                  ),                ),              ),            ),          ),        ),      ),    );  }}

“怎么用Flutter快速制作一个水印组件”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: 怎么用Flutter快速制作一个水印组件

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

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 怎么用Flutter快速制作一个水印组件
    本篇内容介绍了“怎么用Flutter快速制作一个水印组件”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!效果通过child属性将水印叠加给子组...
    99+
    2023-07-05
  • Flutter快速制作一个水印组件实例详解
    目录正文通过child属性将水印叠加给子组件createWatermark方法Watermark组件的完整代码正文 项目开发的过程中,经常会遇到添加水印的需求,其作用无非就是防止重...
    99+
    2023-01-30
    Flutter制作水印组件 Flutter 水印组件
  • Android Flutter制作一个修改组件属性的动画
    目录简介flutter中的动画widgetAnimatedContainers使用举例总结简介 什么是动画呢?动画实际上就是不同的图片连续起来形成的。flutter为我们提供了一个A...
    99+
    2023-05-19
    Android Flutter修改组件属性动画 Android Flutter动画 Flutter 动画
  • Flutter 中怎么实现一个裁剪类组件
    Flutter 中怎么实现一个裁剪类组件,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。ClipRectClipRect组件使用矩形裁剪子组件,通常情况下,ClipRect作用于...
    99+
    2023-06-04
  • 怎么在Word中快速制作组织结构图
    这篇文章主要为大家分析了怎么在Word中快速制作组织结构图的相关知识点,内容详细易懂,操作细节合理,具有一定参考价值。如果感兴趣的话,不妨跟着跟随小编一起来看看,下面跟着小编一起深入学习“怎么在Word中快速制作组织结构图”的知识吧。使用W...
    99+
    2023-06-04
  • 基于Flutter怎么制作一个心碎动画特效
    这篇文章主要介绍了基于Flutter怎么制作一个心碎动画特效的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇基于Flutter怎么制作一个心碎动画特效文章都会有所收获,下面我们一起来看看吧。效果图先上:实现步骤1...
    99+
    2023-06-30
  • 基于Flutter怎么制作一个火箭发射动画
    本文小编为大家详细介绍“基于Flutter怎么制作一个火箭发射动画”,内容详细,步骤清晰,细节处理妥当,希望这篇“基于Flutter怎么制作一个火箭发射动画”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。Anima...
    99+
    2023-06-29
  • 怎么使用Python快速批量下载抖音去水印短视频
    这篇“怎么使用Python快速批量下载抖音去水印短视频”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么使用Python快速...
    99+
    2023-07-06
  • 怎么利用idea快速搭建一个springcloud
    本篇内容主要讲解“怎么利用idea快速搭建一个springcloud”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么利用idea快速搭建一个springcloud”吧!package ...
    99+
    2023-07-02
  • 如何使用Vue3.2+Vite2.7从0快速打造一个UI组件库
    目录1. 前言2. 使用Vite搭建官网2.1 创建项目2.1.1. 全局安装vite(这里我装的时候是2.7.2)2.1.2. 构建一个vue模板(项目名可以改成自己的名字)2.1...
    99+
    2024-04-02
  • 怎么使用Vue+Canvas制作简易的水印添加器小工具
    这篇文章主要介绍“怎么使用Vue+Canvas制作简易的水印添加器小工具”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“怎么使用Vue+Canvas制作简易的水印添加器小工具”文章能帮助大家解决问题。...
    99+
    2023-07-02
  • 怎么用Python制作一个文件去重小工具
    这篇文章主要讲解了“怎么用Python制作一个文件去重小工具”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用Python制作一个文件去重小工具”吧!前言常常在下载网络素材时有很多的重复文...
    99+
    2023-06-29
  • 使用JAVA怎么快速搭建一个springboot项目
    今天就跟大家聊聊有关使用JAVA怎么快速搭建一个springboot项目,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。安装JDK使用的是jdk8,这里使用的是windows10 64...
    99+
    2023-06-06
  • 怎么用Docker快速搭建一个博客网站
    小编给大家分享一下怎么用Docker快速搭建一个博客网站,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、准备工作本章教程基于Docker搭建,所以需要你提前在服务器上安装好Docker环境。Docker安装教程:http...
    99+
    2023-06-25
  • 使用canvas怎么制作一个海报
    使用canvas怎么制作一个海报?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。<canvas id="myCanvas" widt...
    99+
    2023-06-09
  • 怎么用word制作一个课程表
    以下是制作课程表的步骤:1. 打开Microsoft Word软件。2. 创建一个新的空白文档。3. 在文档中选择“布局”选项卡,在...
    99+
    2023-10-07
    word
  • 怎么在Python中使用Tkinter制作一个翻译软件
    本篇文章为大家展示了怎么在Python中使用Tkinter制作一个翻译软件,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。python是什么意思Python是一种跨平台的、具有解释性、编译性、互动性和...
    99+
    2023-06-06
  • 怎么使用Go+WebSocket快速实现一个chat服务
    这篇文章将为大家详细讲解有关怎么使用Go+WebSocket快速实现一个chat服务,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。前言在 go-zero 开源之后,非常多的用户询问是否可以支持以及什么时候...
    99+
    2023-06-14
  • 怎么用css如何制作一个半圆
    这篇文章主要介绍了怎么用css如何制作一个半圆的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么用css如何制作一个半圆文章都会有所收获,下面我们一起来看看吧。   1.利用...
    99+
    2024-04-02
  • 怎么用React撸一个日程组件
    本篇内容主要讲解“怎么用React撸一个日程组件”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么用React撸一个日程组件”吧!目录结构└─Calendar   ...
    99+
    2023-06-05
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作