小编jul*_*n.a的帖子

使文本的特定部分在颤动中可点击

我想让文本的一部分可点击,以便我可以在其上调用函数。我也想控制可点击文本的样式。在最好的情况下,我还可以将可点击区域的大小增加到例如 42px。

在此处输入图片说明

我已经研究过 flutter_linkify 和 linkify,但这不是我想要的。我很好奇是否已经有一个包,甚至内置到 flutter 库中。

text clickable dart flutter

40
推荐指数
2
解决办法
2万
查看次数

Flutter 中用于进展 PageView 的自定义滚动物理

我想PageView使用 custom创建一个进度ScrollPhysics,以便用户只能滚动到已完成的选项卡。请参阅下图以供参考,右上角是进度(绿色=可访问,红色=不可访问页面):

\n\n

1]

\n\n

在屏幕截图中,我完成了第 1 页和第 2 页,但我不想让用户滑动到当前正在发生的第 3 页。scroll_physics.dart我阅读了iOS 和 Android 实现的示例。但我还是被困住了。

\n\n

在这里尝试过这个尝试过,但它有问题。您可以阻止用户向右移动,但如果最后一个可访问的页面不完全可见(如屏幕截图所示),则滚动已被阻止,您无法进一步向右滚动。

\n\n

这是我现在的代码:

\n\n

电话来自:

\n\n
PageView(\n          controller: PageController(\n            initialPage: model.initallPage,\n          ),\n          children: pages,\n          physics: model.currentPage >= model.lastAccessiblePage ? CustomScrollPhysics(CustomScrollStatus()..rightEnd = true) : ScrollPhysics(),\n          onPageChanged: (value) {\n            model.currentPage = value;\n          },\n        ),\n
Run Code Online (Sandbox Code Playgroud)\n\n

自定义滚动物理:

\n\n
class CustomScrollStatus {\n  bool leftEnd = false;\n  bool rightEnd = false;\n  bool isGoingLeft = false;\n  bool isGoingRight = false;\n}\n\nclass CustomScrollPhysics extends ScrollPhysics …
Run Code Online (Sandbox Code Playgroud)

overriding flutter

5
推荐指数
1
解决办法
3835
查看次数

Dart 中带有条件的列表长度

有没有办法得到 4 而不是 2 结果?

List<String> test = [
      'first',
      'second',
      if (false) 'third',
      if (false) 'fourth',
    ];

    print('length: ' + test.length.toString());
Run Code Online (Sandbox Code Playgroud)

list dart

2
推荐指数
1
解决办法
2万
查看次数

在 google firestore 中使用交易的缺点

我正在开发 Flutter 应用程序,并且正在使用 Firebase 服务。我只想坚持使用事务,因为我更喜欢一致性而不是简单性。

await Firestore.instance.collection('user').document(id).updateData({'name': 'new name'});

await Firestore.instance.runTransaction((transaction) async {
      transaction.update(Firestore.instance.collection('user').document(id), {'name': 'new name'});
    });
Run Code Online (Sandbox Code Playgroud)

交易有任何(主要)缺点吗?例如,它们是否更贵(Firebase 计费,而不是计算)?毕竟 Firestore 数据库上的数据可能会发生更改,这将导致最多 5 次重试。

供参考:https : //firebase.google.com/docs/firestore/manage-data/transactions

“您还可以使用事务对数据进行原子更改。虽然这对于增加投票总数来说有点笨拙,但对于更复杂的更改来说这是正确的方法。”

https://codelabs.developers.google.com/codelabs/flutter-firebase/#10

transactions firebase flutter google-cloud-firestore

0
推荐指数
1
解决办法
1489
查看次数