Flutter ReorderableListView不适用于TextFields

时间:2019-02-21 04:29:23

标签: flutter

我的ReorderableListView中的小部件本质上是TextField个。长按窗口小部件时,在长按应使窗口小部件“悬停”之后,TextField会获得焦点。如何使拖放效果优先于TextField?我仍然希望通过普通的点击来激活TextField。

下面的代码演示了我的问题。

我也尝试使用这个非官方的flutter_reorderable_list软件包。 (要测试这一点,请将示例代码this line上的Text小部件替换为TextField。)

我愿意使用任何丑陋的技巧来完成这项工作,包括修改Flutter源代码!

import 'package:flutter/material.dart';

void main() => runApp(MyApp());

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    final children = List<Widget>();
    for (var i = 0; i < 5; i++) {
      children.add(Container(
        color: Colors.pink, // Only the pink area activates drag & drop
        key: Key("$i"),
        height: 50.0,
        child: Container(
          color: Colors.grey,
          margin: EdgeInsets.only(left: 50),
          child: TextField(),
        ),
      ));
    }

    return MaterialApp(
      home: Scaffold(
        body: SafeArea(
          child: ReorderableListView(
            children: children,
            onReorder: (oldIndex, newIndex) => null,
          ),
        ),
      ),
    );
  }
}

0 个答案:

没有答案