防止敲击外部时键盘关闭

问题描述 投票:0回答:1

在 Flutter Web 中,文本字段的默认行为是 当点击文本字段外部的任何小部件或与之交互时,键盘会消失。

我想知道如何禁用这种行为。

Animated GIF of an iOS simulator running the code below, showing how the keyboard dismisses when tapping outside of a focused text field

这是 GIF 中所示示例的代码:

import 'package:flutter/material.dart';

void main() {
  runApp(const MainApp());
}

class MainApp extends StatelessWidget {
  const MainApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: SingleChildScrollView(
          child: Column(children: [
            TextField(
              controller: TextEditingController(text: ''),
            ),
          ]),
        ),
      ),
    );
  }
}

谢谢你。

ios flutter keyboard ios-web-app
1个回答
0
投票

您可以使用

PopScope
来实现这一点,结果如下:

enter image description here

这是代码:

Scaffold(
      appBar: AppBar(title: Text('Test Pop Scope'),),
      body: PopScope(
        canPop: false,
          child: TextFormField(
        decoration: InputDecoration(
          enabledBorder: OutlineInputBorder(),
          focusedBorder: OutlineInputBorder(),
          hintText: 'press Here'
        )
      )),
    );
© www.soinside.com 2019 - 2024. All rights reserved.