FLUTTER ECOSYSTEM

imSanjaySoni/ObscureWidget

当屏幕正在被录制时,ObscureWidget 插件会模糊其子组件。ObscureWidget.builder() 在屏幕被录制时提供额外的控制,以便添加自定义处理。

ObscureWidget 项目封面
Stars
13
Forks
0
最近推送(UTC)
2023年9月23日
项目状态
未归档
Sanjay Soni GitHub avatar
GITHUB User

Sanjay Soni ↗

Mobile Engineer | Prev. Tap, Uni Cards | Flutter, SwiftUI

Bangalore
语言DartRubySwiftObjective-C

技术话题

使用的依赖

依赖清单 3 项
  • flutter{"sdk":"flutter"}
  • flutter_test开发依赖{"sdk":"flutter"}
  • flutter_lints开发依赖^2.0.0

原始 README

以下为英文项目原文快照,最新内容请访问 GitHub。

展开 / 收起项目 README

ObscureWidget Plugin

Platform iOS Pub Pub Pub Pub Points GitHub issues License


ObscureWidget() blurs its child when the screen is being captured. ObscureWidget.builder() gives extra control to add custom handling when recording the screen. currently supported on only the iOS platform.

Example

Demo Initial While Recording
Demo Demo Demo

Usages

Let's look at how to use the ObscureWidget, ObscureWidget.builder(), and .obscured() extensions.

ObscureWidget

supported parameters blur, blurColor, borderRadius, and colorOpacity

ObscureWidget(
    child: Container(
    width: double.infinity,
    color: Colors.amber,
    padding: const EdgeInsets.all(18.0),
    child: Text(
        'Secure Text',
        style: Theme.of(context).textTheme.headline6,
        ),
    ),
)
with .obscured() extension
 Container(
    width: double.infinity,
    color: Colors.amber,
    padding: const EdgeInsets.all(18.0),
    child: Text(
    'Other Secure Text with extension',
    style: Theme.of(context).textTheme.headline6,
    ),
).obscured(blur: 2, blurColor: Colors.red),
ObscureWidget.builder()

use this for custom implementation

ObscureWidget.builder(
    obscureBuilder: (context, isCaptured, child) {
    return Container(
        decoration: BoxDecoration(
        border: Border.all(
            width: 4,
            color: isCaptured ? Colors.red : Colors.green,
            ),
        ),
        child: child,
    );
    },
    child: Container(
    width: double.infinity,
    color: Colors.black,
    padding: const EdgeInsets.all(18.0),
    child: Text(
        'Other Secure Text with builder constructor',
        style: Theme.of(context).textTheme.headline6?.copyWith(color: Colors.white),
        ),
    ),
)