相关疑难解决方法(0)

如何在活动之上创建透明的全屏对话框 - Flutter

我试图在活动之上创建一个透明的全屏对话框.我试过跟这个线程,但解决方案不起作用.

简而言之,我需要的是:

  • 全屏对话框.
  • 透明背景,除了我用于对话框的小部件

这是我的代码:

打开对话框

void onNextBtnClick(){
    var route = new MaterialPageRoute(
        builder: (BuildContext context) =>
        new GenreDialogUI(),fullscreenDialog: true
    );
    Navigator.of(context).push(route);
}
Run Code Online (Sandbox Code Playgroud)

对话框视图

import 'package:flutter/widgets.dart';

class HolePuncherPainter extends CustomPainter {
  static final clearPaint = new Paint()
    ..color = Colors.transparent,
    ..blendMode = BlendMode.clear;

  const HolePuncherPainter();

  @override
  void paint(Canvas canvas, Size size) {
    canvas.drawRect(
        new Rect.fromLTWH(0.0, 0.0, size.width, size.height), clearPaint);
  }

  @override
  bool shouldRepaint(CustomPainter oldDelegate) {
    return true;
  }
}

class GenreDialogUI extends StatefulWidget {
   @override
   _GenreDialogUI createState() => …
Run Code Online (Sandbox Code Playgroud)

dart flutter flutter-layout

11
推荐指数
2
解决办法
5779
查看次数

标签 统计

dart ×1

flutter ×1

flutter-layout ×1