我正在实现一个 TextFormField,并将 maxLines 属性设置为 3。一旦用户从他的第四行开始,如何让 TextFormField 向下滚动?目前光标不再可见,直到用户手动向下滚动。有没有办法自动执行此操作?
这种行为实际上在“文本字段”示例中的 flutter_gallery 应用程序中有所体现。只需在“实时故事”输入中输入长文本,直到它到达第四行。
我的代码的重要部分实际上是这样的:
import 'package:flutter/material.dart';
class TextFormFieldDemo extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new Scaffold(
body: new Form(
child: new TextFormField(
maxLines: 3,
),
),
);
}
}
Run Code Online (Sandbox Code Playgroud)
到目前为止,我还没有找到解决此问题的方法。
此问题会影响 iOS 和 android。
在我探索颤振框架的过程中,我遇到了一个问题,我不知道如何解决.我可以将TabBar与TabBarView结合使用作为其他小部件的子代吗?
我不能同时让TabBarView和BottomNavigationBar控制在我的脚手架主体上显示的内容。使用此代码,TabBarView 或BottomNavigationBar 具有控制权。
我希望能够在所有四个页面之间横向滚动以及选择主页和收藏夹来控制屏幕上显示的内容。
@override
Widget build(BuildContext context) {
return new Scaffold(
appBar: new AppBar(
title: new Text("Traveler"),
bottom: new TabBar(controller: controller, tabs: <Tab>[
new Tab(text: "NEW"),
new Tab(text: "HOTELS"),
new Tab(text: "FOOD"),
new Tab(text: "FUN"),
]),
),
body: new Stack(
children: <Widget>[
new Offstage(
offstage: index != 0,
child: new TickerMode(
enabled: index == 0,
child: new Material(child: new NewPage()),
),
),
new Offstage(
offstage: index != 1,
child: new TickerMode(
enabled: index == 1, …
Run Code Online (Sandbox Code Playgroud) 以下问题:我有一个运行良好的ExpansionTiles列表。我面临的唯一问题是,滚动到视图之外的展开的 ExpansionTile 在再次滚动到视图中后将不再展开。这会导致不受欢迎的用户体验以及一种“跳跃”滚动。
该文档说明如下:
当与 ListView 之类的滚动小部件一起使用时,必须指定一个唯一的键,以便 ExpansionTile 在滚动进入和退出视图时能够保存和恢复其展开状态。
但这不起作用。到目前为止,我还没有找到办法来完成这项工作。
这是到目前为止的代码:
import 'package:flutter/material.dart';
void main() {
runApp(new MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return new MaterialApp(
title: 'ExpansionTile Test',
home: new MyHomePage(),
);
}
}
class MyHomePage extends StatefulWidget {
@override
_MyHomePageState createState() => new _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
List<Widget> _getChildren() {
List<Widget> elements = [];
for (int i = 0; i < 20; i++) {
elements.add(new ListChild());
} …
Run Code Online (Sandbox Code Playgroud)