小编Rid*_*Sun的帖子

如何在主体中使用多个选项卡折叠主AppBar

如图所示,我在下面进行了以下设置.Scaffold-> AppBar-> TabBarView->比多个标签和第一个Tab中的聊天ListView.

我希望主用AppBar在用户向上滚动时完全崩溃.我知道SliverAppBar在颤动,但不知道这将如何转化为我有多个Tabs的用例.当用户开始导航到另一个选项卡时,Appbar应该再次显示,如果第二个Tab也有ListView,它应该监听ListView.

在此输入图像描述

flutter

7
推荐指数
1
解决办法
809
查看次数

使图像小部件禁用/变灰

我有一堆Image窗口小部件,当它们处于禁用状态时,应显示为灰色。

有没有一种方法可以更改现有图像,使其看起来已禁用/变灰?

我想避免同时启用图像资产和禁用图像资产来增加整体APK大小,而不要增加单个资产。

flutter

6
推荐指数
6
解决办法
2378
查看次数

如何在颤振/飞镖块中取消“等待”

我正在使用流读取块中的位置数据。我有一个开始和一个停止事件。在 stop 方法中,我取消了流订阅。当我使用listen流到yield状态时,yield永远不会调用语句的内部。

  Stream<LocationState> _start() async* {

    _locationSubscription = location.onLocationChanged.listen(
      (location) async* {
        if (location.isNotNull) {
          yield LocationState.sendData(location: updateLocation(location));
        }
      },
    );

    //send one initial update to change state
    yield LocationState.sendData(
        location: updateLocation(await Location().getLocation()));
  }

 Stream<LocationState> _stop() async {
    await _locationSubscription?.cancel();
    _locationSubscription = null;
    yield LocationState.stoped();
 }
Run Code Online (Sandbox Code Playgroud)

当我替换listento 时,await for我看不到任何方法可以阻止它产生事件,因为订阅句柄消失了。有任何想法吗?有什么解释吗?

   Stream<LocationState> _start() async* {


    await for (LocationData location in location.onLocationChanged) {
      if (location.isNotNull) {
        yield LocationState.sendData(location: updateLocation(location));
      }
    }

    //send …
Run Code Online (Sandbox Code Playgroud)

asynchronous dart flutter

6
推荐指数
1
解决办法
1028
查看次数

如何使用 android:launchMode="singleInstance" 处理 Flutter 中外部应用程序传入的 Intent

在 Flutter 文档中,在如何处理来自 Flutter 中外部应用程序的传入意图下 , 清单显示了android:launchMode="singleTop"共享文本,void initState()并使用getSharedText();状态变量中的方法在 flutter 中传输。

无论如何,每次我向应用程序共享文本时,都会创建该应用程序的新实例。所以我将清单更改为Manifest to android:launchMode="singleInstance"(或singleTask)。

在这种情况下void initState()只能调用一次,不能getSharedText();再用来调用。我尝试AppLifecycleState.resumed打电话getSharedText();给那里,但数据始终为空。我希望 flutter 能有这方面的示例项目。我找不到他们。有什么提示吗?

android-manifest flutter

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

如何在 SingleChildScrollView 中添加或启用位置指示器

我的多行需要一个滚动位置指示器,TextField它被包裹在SingleChildScrollView.

在此处输入图片说明

文本字段中的文本多于可见的文本,并且我不知道隐藏了一些文本及其隐藏位置(顶部或底部)

这是Whatsup。TextField 显示一个滚动条。我想做同样的事情。 在此处输入图片说明

dart flutter

5
推荐指数
3
解决办法
8950
查看次数

是否有 Flutter StreamBuilder 允许我收听多个流?

是否有 StreamBuilder 允许我收听多个流?就像是:

   body: MultiStreamBuilder(
        streams: [bloc.state.stream, bloc.kind.stream],
        builder: (context) {
Run Code Online (Sandbox Code Playgroud)

我不需要像 Flutter StreamBuilder 那样的快照,因为我可以从 bloc 中读取

dart flutter

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

如何创建具有半透明背景和不透明前景的小部件?

我创建了一个flutter小部件,它显示了半透明的背景和不透明的前景。我使用堆栈来做到这一点。不幸的是,我还必须使用内容来布局背景,因为否则内容的大小将无法正确调整。

有没有一种方法可以让堆栈中的背景知道前景的大小,而无需进行两次布局?

typedef void OnTapFn();

class Bubble extends StatelessWidget {
  const Bubble({
    @required this.tapFn,
    @required this.content,
    this.margin = 4.0,
    this.color = Colors.grey,
  });

  final OnTapFn tapFn;
  final double margin;
  final Widget content;
  final Color color;

  @override
  Widget build(BuildContext context) => new GestureDetector(
      onTap: () => tapFn,
      child: new Stack(
        children: <Widget>[
          new Opacity(opacity: 0.5, child: _buildBackground),
          new Container(
              margin: new EdgeInsets.all(margin), //same as the Border width
              child: new Opacity(opacity: 1.0, child: content))
        ],
      ));

  Container get _buildBackground => new Container( …
Run Code Online (Sandbox Code Playgroud)

android flutter

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

以两个或多个为一组迭代列表

我喜欢迭代一个列表并将它们分成几对,如下所示:

List<String> list = [1,2,3,4,5,6,7,8];
List<Tuple2> listOfTuples = list.take2((value1,value2) => Tuple2(value1,value2));
print(listOfTuples.toString()); // output => [[1,2],[3,4],[5,6],[7,8]]
Run Code Online (Sandbox Code Playgroud)

我知道有一个take(count)in dart 但我没有找到一个很好的例子。

我知道我可以用循环等来做到这一点,for但我想知道是否有更优雅的方式。

dart flutter

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

标签 统计

flutter ×8

dart ×4

android ×1

android-manifest ×1

asynchronous ×1