您当前的位置: 首页 >  ide

Allen Su

暂无认证

  • 1浏览

    0关注

    431博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【Flutter 问题系列第 35 篇】如何自定义 PopupMenuDivider 分割线的颜色

Allen Su 发布时间:2021-07-19 12:35:01 ,浏览量:1

这是【Flutter 问题系列第 35 篇】,如果觉得有用的话,欢迎关注专栏。

在使用 Flutter 中的下拉弹框组件 PopupMenuButton 时,需要对子元素设置分割线 PopupMenuDivider ,但 PopupMenuDivider 组件只提供了修改高度的属性,不能改变分割线的颜色,这个就太不友好了。

既然源码中的组件无法修改颜色,那就把 PopupMenuDivider 中的源码复制过来,自己添加 color 属性就行了。

PopupMenuDivider 的源码很简单,其实就是返回了一个 Divider 组件,下面是自定义的 PopupMenuDivider

如下代码所示

import 'package:flutter/material.dart';

// ------------------------------------------------------
// author:Allen Su
// date  :2021/7/19 12:30
// usage :自定义 PopupMenuDivider 组件
// ------------------------------------------------------

const double _kMenuDividerHeight = 16.0;

class CustomPopupMenuDivider extends PopupMenuEntry {
  final double height;
  final Color color;

  const CustomPopupMenuDivider({
    this.height: _kMenuDividerHeight,
    this.color: Colors.white,
    Key key,
  }) : super(key: key);

  @override
  bool represents(void value) => false;

  @override
  _PopupMenuDividerState createState() => _PopupMenuDividerState();
}

class _PopupMenuDividerState extends State {
  @override
  Widget build(BuildContext context) {
    return Divider(height: widget.height, color: widget.color);
  }
}

我把平常自己总结的关于 Flutter 实用的轮子 写到了 GitHub 上,有兴趣的可以看下。

你的问题得到解决了吗?欢迎在评论区留言。

赠人玫瑰,手有余香,如果觉得文章不错,希望可以给个一键三连,感谢。

结束语 Google 的 Flutter 越来越火,截止 2021年7月19日 GitHub 标星已达 125K,Flutter 毅然是一种趋势,所以作为前端开发者,没有理由不趁早去学习。 无论你是 Flutter 新手还是已经入门了,不妨先点个关注,后续我会将 Flutter 中的常用组件(含有源码分析、组件的用法及注意事项)以及可能遇到的问题写到 CSDN 博客中,希望自己学习的同时,也可以帮助更多的人。
关注
打赏
1656491068
查看更多评论
立即登录/注册

微信扫码登录

0.0688s