小编Pab*_*era的帖子

防止小部件填充在 Flutter 中扩展的祖先

如何防止 aRaisedButton扩展以填充Expanded包含它的 ?我想创建三列宽度与可用空间成正比的列,但我希望每列中的子项是其自然大小,而不消耗其父项的整个宽度Expanded

  Widget _controls(BuildContext cx) {
    return Row(
      children: [
        Expanded(
          flex: 1,
          child: player.isOnFirstItem
              ? Container()
              : IconButton(
                  icon: Icon(Icons.arrow_back),
                  onPressed: () => control.gotoPreviousItem(),
                ),
        ),
        Expanded(
          flex: 4,
          child: player.isComplete()
              ? Text(player.currentItem.status) // I'll be adding more here
              : RaisedButton(
                  child: Text(player.currentItem.actionText),
                  onPressed: () => player.currentItem.action(),
                ),
        ),
        Expanded(
          flex: 1,
          child: player.isOnLastItem
              ? Container()
              : IconButton(
                  icon: Icon(Icons.arrow_forward),
                  onPressed: () => player.gotoNextItem(),
                ),
        ),
      ],
    );
Run Code Online (Sandbox Code Playgroud)

RaisedButton还填充内的柔性空间时,我还窝它Container …

flutter flutter-layout flutter-widget

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

Flutter 在底部工作表顶部显示 Snackbar

在我的代码中,我调用底部工作表来显示瓷砖列表。这些磁贴包含显示快餐栏的按钮。该功能工作正常,唯一的问题是小吃栏显示在底部工作表的后面,因此只有关闭底部工作表才能看到它。它们中的每一个都使用以下代码调用:

1. 底片:

  void _settingModalBottomSheet(context, stream, scaffoldKey ) {
    if (_availableRides.length == 0) {
      return null;
    } else {
      return scaffoldKey.currentState.showBottomSheet((context) {
        return Column(
          children: Widgets;
      });
    }
  }
Run Code Online (Sandbox Code Playgroud)

2. 小吃店

widget.scaffoldKey.currentState.showSnackBar(SnackBar(
         content: Text("Created", textAlign: 
    TextAlign.center,),),
Run Code Online (Sandbox Code Playgroud)

有谁知道我如何将小吃店放在底纸前面

dart android-snackbar flutter flutter-layout flutter-widget

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

Flutter 设计 Instagram 就像气球/工具提示小部件

在颤振中,我想将此布局设计为小部件

在此处输入图片说明

和当前实现的代码有这个结果:

在此处输入图片说明

你能帮我解决这个设计的一些问题吗?

在那个高度/重量和角落应该是可定制的,我应该可以将一些小部件放入其中,例如:

在此处输入图片说明

class MessageClipper extends CustomClipper<Path> {
  MessageClipper({this.borderRadius = 15});
  final double borderRadius;
  @override
  Path getClip(Size size) {
    double width = size.width;
    double height = size.height;
    double rheight = height - height / 3;
    double oneThird = width / 3;

    final path = Path()
      ..lineTo(0, rheight - borderRadius)
      ..cubicTo(0, rheight - borderRadius, 0, rheight, borderRadius, rheight)
      ..lineTo(oneThird, rheight)
      ..lineTo(width/2-borderRadius, height-borderRadius)
      ..cubicTo(width / 2 - borderRadius, height - borderRadius, width / 2,
          height, width / 2 + borderRadius, height …
Run Code Online (Sandbox Code Playgroud)

flutter flutter-layout

4
推荐指数
1
解决办法
4286
查看次数

为什么只有 ListView.builder() 中的内容不滚动?

我有一个带有 Text 小部件和 ListView 的屏幕,当我尝试在 ListView 内滚动时,它不允许我滚动。

我的身体是 SingleChildScrollView 但它没有为 ListView.builder 提供滚动视图。我试图将 ListView.build 包装在 Expanded 中,但没有成功。

class HomePageState extends State<HomePage> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
        appBar: new AppBar(
          title: Text("MyBar"),
          centerTitle: true,
        ),
        body: SingleChildScrollView(child: Column(
          children: <Widget>[
            Text(
                "Information"),
            Container(
                child: ListView.builder(
                    scrollDirection: Axis.vertical,
                    shrinkWrap: true,
                    itemCount: widget.match.players.length,
                    itemBuilder: (context, index) {
                      return Column(
                        children: <Widget>[
                          Card(
                              child: ListTile(
                            leading: CircleAvatar(
                              radius: 30.0,
                              foregroundColor: 
                                Theme.of(context).primaryColor,
                              backgroundColor: Colors.grey,
                              backgroundImage: 
                          CachedNetworkImageProvider("url"),
                            ),
                            title: new Row(
                                mainAxisAlignment:
                                    MainAxisAlignment.spaceBetween,
                                children: …
Run Code Online (Sandbox Code Playgroud)

flutter flutter-layout flutter-listview flutter-widget

4
推荐指数
1
解决办法
4624
查看次数

这个运算符“?”是什么?在飞镖?

我使用颤振框架,这部分代码使用操作“?”。但不明白

 if (state is WeatherLoaded) {
          final weather = state.weather;
          final themeBloc = BlocProvider.of<ThemeBloc>(context);
          themeBloc.dispatch(WeatherChanged(condition: weather.condition));

          _refreshCompleter?.complete();
          _refreshCompleter = Completer();
Run Code Online (Sandbox Code Playgroud)

所有代码链接

operators dart flutter

3
推荐指数
1
解决办法
2872
查看次数

Flutter - 点击/触摸区域如何工作?

1)如果我有这个,当我点击孩子时,Container它不会打印“点击”:

Container(
  color: Colors.red,
  child: GestureDetector(
    onTap: () => print('tap'),
    child: Container(
      width: 100,
      height: 100,
    ),
  ),
),
Run Code Online (Sandbox Code Playgroud)

2)如果我有这个,当我点击孩子时,Container它会打印“点击”:

Container(
  color: Colors.red,
  child: GestureDetector(
    onTap: () => print('tap'),
    child: Container(
      width: 100,
      height: 100,
      decoration: BoxDecoration(),
    ),
  ),
),
Run Code Online (Sandbox Code Playgroud)

3)如果我有这个,当我点击孩子时Container,在文本之外,它会打印“点击”:

Container(
  color: Colors.red,
  child: GestureDetector(
    onTap: () => print('tap'),
    child: Container(
      width: 100,
      height: 100,
      child: Text("A"),
    ),
  ),
),
Run Code Online (Sandbox Code Playgroud)

有人可以向我解释这 3 种行为吗?

flutter flutter-layout flutter-widget

3
推荐指数
1
解决办法
2777
查看次数

Flutter - 如何在 ListView 构建器中列出 forEach() 值?

您好,我正在尝试将数据从 JSON 列出到 Listview Builder 。但 Flutter 给了我这个错误:Column's children must not contain any null values, but a null value was found at index 0

我尝试在列表视图中像这样映射每个

alo[Index]['rewards'].forEach((k, v) {
                      Text(v['name']);
                    }),
Run Code Online (Sandbox Code Playgroud)

这是我的完整代码:

            shrinkWrap: true,
            itemCount: alo.length,
            itemBuilder: (BuildContext ctxt, int Index) {
              return Card(
                  child: Padding(
                padding: const EdgeInsets.all(15.0),
                child: Column(
                  children: <Widget>[
                    alo[Index]['rewards'].forEach((k, v) {
                      Text(v['name']);
                    }),


                  ],
                ),
              ));
            });
Run Code Online (Sandbox Code Playgroud)

有什么办法解决这个问题吗?谢谢你!

dart flutter

3
推荐指数
1
解决办法
8790
查看次数

Flutter中使用自定义键盘实现文本编辑功能

我已经实现了自定义键盘(在表格->卡片->按钮小部件的帮助下),如下所示,如果用户按下按钮,那么我捕获文本并将其显示在屏幕上。

在此输入图像描述

通过使用此功能,用户可以输入数据,但不能编辑数据。在这种情况下如何实现文本编辑功能?

我尝试使用 TextField 小部件来适应我的情况,它提供了包括文本编辑在内的所有功能。但它不允许使用自定义键盘。

mobile-application flutter flutter-layout

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

在 Flutter 中使用 FutureBuilder 进行 ListView 过滤器搜索

我是颤振编程的初学者。当我使用未来的构建器时,我遇到了 listview 搜索功能的问题,当我输入一个字母时,它会更改列表一秒钟,但一秒钟后返回所有列表数据。我不知道错误是什么,因为只有没有警告或错误。我在这个代码上堆栈,请帮助pppppppppppppppp......

这是我的代码, 当我输入字母时的默认列表数据 ,列表会在几秒钟后再次返回

List mydata;
  List unfilterData;

  Future loadJsonData() async {
    List data = json.decode(await rootBundle.loadString('Json/indomodel.json'));
    setState(() {
      mydata = data;
      this.unfilterData = mydata;
    });
    return data;
  }

  Widget mylist() {
    return FutureBuilder(
      future: loadJsonData(),
      builder: (context, snapshot) {
        if (!snapshot.hasData)
          return Center(
              child: CircularProgressIndicator(
            valueColor: AlwaysStoppedAnimation(Colors.amber),
          ));
        else {
          return ListView.builder(
            itemCount: snapshot.data.length,
            itemBuilder: (BuildContext context, index) {
              return Card(
                elevation: 0.3,
                child: ListTile(
                  // leading: CircleAvatar(child: Icon(FontAwesomeIcons.adjust),),
                  title: Column(
                    crossAxisAlignment: CrossAxisAlignment.start,
                    children: <Widget>[
                      Row( …
Run Code Online (Sandbox Code Playgroud)

dart flutter

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