颤动将文本字段对齐到底部,文本从顶部对齐

时间:2018-07-10 07:25:57

标签: dart flutter flutter-layout

如何从顶部对齐文本和从底部对齐文本字段?这是为了创建一种类似于聊天的界面。

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Retrieve Text Input'),
      ),
      body: Padding(
        padding: const EdgeInsets.all(16.0),
        child: Column(
          crossAxisAlignment: CrossAxisAlignment.center,
          mainAxisSize: MainAxisSize.max,
          mainAxisAlignment: MainAxisAlignment.end,

          children: <Widget>[
            Text(
              'Hello, How are you?\nwow',
              textAlign: TextAlign.left,
              overflow: TextOverflow.ellipsis,
              //style: new TextStyle(fontWeight: FontWeight.bold),
            ),
            TextField(
              controller: myController,
              onChanged: (text) {
                //print("First text field: $text");
              },
              onSubmitted: (text) {
                print(text);
                //myController.clear();
                myController.text = "";
              },
              decoration: new InputDecoration(
                  hintText:"Enter your response."
              ),
              focusNode: _focusNode,
              autofocus: true,
            ),
          ],
        ),
      ),
    );
  }

我尝试将文本和文本字段分成多个容器,但是没有用。

有没有一种方法可以像iOS布局约束那样扑朔迷离,在这种布局中,文本字段仅限于键盘高度,而文本则仅限于文本字段?

1 个答案:

答案 0 :(得分:7)

您可以在Expanded的{​​{1}}和Text之间插入TextField。这将在它们之间占用尽可能多的空间,从而将您的Column向上和Text向下推:

TextField