标签: widget

如何在 Flutter 中的行小部件内的容器上添加边框?

        Container(
    //            decoration: BoxDecoration(
    //              border: Border.all(color: Colors.black45),
    //              borderRadius: BorderRadius.circular(8.0),
    //            ),
                child: Row(
                  children: <Widget>[
                    Container(
                      child: Text("hi"),
                      margin : EdgeInsets.fromLTRB(20, 8, 8, 16),
                      width: MediaQuery.of(context).size.width *0.42,
                      height: 90,
                      color: Colors.black12,
                    ),

                    Container(
                      child: Text("Hi"),
                      margin: EdgeInsets.fromLTRB(16, 8, 8, 16),
                      width: MediaQuery.of(context).size.width * 0.42 ,
                      height: 90,
                      color: Colors.black12,
                    )
                  ],
                ),
              ),
Run Code Online (Sandbox Code Playgroud)

我可以在外部容器上使用 Box 装饰添加边框,但当我尝试在内部容器上执行相同操作时,它会引发错误。问题是什么以及如何解决?

layout border widget flutter flutter-layout

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

修改默认的 ExpansionTile 子项垂直内边距 Flutter

如何减少 ExpansionTile 子项之间的垂直填充:


在此输入图像描述

这是内联小部件代码:

Expanded(
    child: ListView(
        padding: EdgeInsets.all(0.0) ,
        primary: true,
        shrinkWrap: true,
        children: <Widget>[
            ExpansionTile(
                title: Text("Categories"),
                children: [
                    CheckboxListTile(
                        controlAffinity: ListTileControlAffinity.trailing,
                        title: Text( "Cars", maxLines: 1, ),
                      ),
                    CheckboxListTile(
                        controlAffinity: ListTileControlAffinity.trailing,
                        title: Text("Veichle", maxLines: 1, ),
                      ),
                    ],
                initiallyExpanded: true,
                ),
        ],
    ),
),
Run Code Online (Sandbox Code Playgroud)

widget flutter flutter-layout

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

在 tkinter、python 中设置标签宽度(以像素为单位)

在 tkinter 中,当标签有一些文本时,宽度单位是文本单位,我的问题很简单,即使标签包含一些文本,如何使用像素设置标签宽度?我正在使用网格方法来显示小部件。感谢您的帮助

python tkinter widget python-3.x

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

如何在flutter中设置showModalBottomSheet宽度

我有设计(如图所示)并且正在使用 showModalBottomSheet 但是当我设置宽度时,它不会改变并保持屏幕宽度,所以我有几个问题:

1-如何设置 showModalBottomSheet 的宽度
2-对于这种底部菜单,是否有 showModalBottomSheet 的替代方案
3-如何模糊照片中显示的背景

showModalBottomSheet<void>(
          context: context,
          builder: (BuildContext context) {
            return Container(
              height: SizeConfig.screenHeight * 0.6,
              width: 30,
              color: Colors.red,
              child: Center(
                child: Column(
                  mainAxisAlignment: MainAxisAlignment.center,
                  mainAxisSize: MainAxisSize.min,
                  children: <Widget>[
                    const Text('Modal BottomSheet'),
                    ElevatedButton(
                      child: const Text('Close BottomSheet'),
                      onPressed: () => Navigator.pop(context),
                    )
                  ],
                ),
              ),
            );
          },
        );
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

menu widget button flutter flutter-layout

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

Flutter 中的 UI 和逻辑分离

通常,我使用一个单独的类,并在小部件顶部声明一个对象。我想知道该架构有什么问题。

我在 Flutter 中遇到了一个完整的包,WidgetView,它需要声明一个依赖项,然后创建一个状态对象,然后做同样的事情。

为什么不只是一个简单的类来实现相同的目标呢?像下面这样

class NewAccountComponent extends StatelessWidget {  
final NewAccountComponentLogic logic = NewAccountComponentLogic();
  @override
  Widget build(BuildContext context) {
    return AlertDialog(
      title: Text('Enter a Unique Account Number'),
      titlePadding: EdgeInsets.all(20.0),
      content: TextFormField(
        controller: logic.controller,
            onPressed: () => logic.clearTextFormField(),
          ),
        ),
}
class NewAccountComponentLogic {
  static String accountNumber;
  static bool existsAccountNumber;
  TextEditingController controller = TextEditingController();
  clearTextFormField() {
    controller.text = '';
    accountNumber = '';
}
Run Code Online (Sandbox Code Playgroud)

user-interface logic widget flutter

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

Flutter:使用可选择的身体部位创建 BodyMap Widget

我希望你在这样的艰难时刻过得很好。

在我迷失在一片布满小部件树的森林之前,我想问这个问题。目前,我正在为我的硕士论文开发一个 flutter 应用程序,其中一个功能如下:

用户应该能够从身体图中选择身体部位,并且所选部位应该突出显示。我将附上屏幕截图以便更好地理解。

我知道这更像是“你会怎么做?” 问题而不是问题,但也许有人有比我更好的主意。

选定某一部位的身体图

所以我的方法是:

  • 使用人体的空白图像作为堆栈中的背景

  • 使用定位小部件,将圆形按钮放置在可选择的身体部位的顶部

这看起来是一个不错的解决方案还是有更好的方法?

一切顺利!

widget flutter flutter-layout

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

为什么 Dart 中的 const Widget 不相同?

当我们调用identical()使用其构造函数创建的两个小部件时const,它返回 false。而在为两个非小部件对象调用相同的方法时,它会返回true

这是为什么 ?

void main() {

  final a = const Center(
    child: const Padding(padding: const EdgeInsets.all(8),)
  );

  final b = const Center(
    child: const Padding(padding: const EdgeInsets.all(8),)
  );

  assert(identical(a, b)); // false


  var a1 = const EdgeInsets.all(8);

  var b1 = const EdgeInsets.all(8);


  assert(identical(a1, b1)); // true

}
Run Code Online (Sandbox Code Playgroud)

[错误:flutter/lib/ui/ui_dart_state.cc(199)] 未处理的异常:'package:todo_improve/main.dart':断言失败:第 17 行 pos 8:'identical(a, b)':不正确。

constants widget dart flutter

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

django 表单 DateTimeInput 小部件实例值

我在 Django 类基 UpdateView 中具有以下形式:

class MyForm(forms.ModelForm):
    
    class Meta:
        model = Mymodel
        fields = ['name', 'element', 'time_strat', 'time_end']

        widgets = {
            'time_strat': forms.DateTimeInput(attrs={'type': 'datetime-local'}),
            'time_end':  forms.DateTimeInput(attrs={'type': 'datetime-local'})     
        }
Run Code Online (Sandbox Code Playgroud)

并且没有小部件视图呈现(带有日期时间字段中的值): 没有小部件的表单

使用小部件我有日期时间选择器但没有值:

带有小部件的表单

如何在 DateTimeInput 小部件中拥有值(日期时间选择器和实例值)?

python django widget

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

Flutter - 如何提取内部带有 onPressed setState 的 Widget?

我想从内部提取一个小部件onPressed setState,但收到消息“无法提取对封闭类方法的引用。 ”有没有办法做到这一点?

我想将我的代码分成不同的小部件,以便保持清晰。这是代码的简化示例:

import 'package:flutter/material.dart';

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Calculator(),
    );
  }
}

class Calculator extends StatefulWidget {
  @override
  _CalculatorState createState() => _CalculatorState();
}

class _CalculatorState extends State<Calculator> {
  var myValue = 0;

  void calculate() {
    myValue = 12;
  }

  @override
  Widget build(BuildContext context) {
    return Container(
      child: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        children: [
          Container(
            child: TextButton(
              onPressed: () {
                setState(() {
                  calculate(); …
Run Code Online (Sandbox Code Playgroud)

widget android-studio flutter

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

无状态小部件,具有必需值和可选值以及 null 安全性

所以我试图创建一个可以在我的 flutter 应用程序中使用的自定义小部件。创建此小部件时,我希望始终选择一种颜色(因此是所需的值),但我希望保持 cardChild 和 onpres 值可选。我该怎么做呢?我尝试提供一个空容器和空函数作为默认值,但随后出现错误

错误:可选参数的默认值必须是常量。(non_constant_default_value 位于 [untitled1] lib/Components/reusable_card.dart:6)

这是我的小部件构造函数:

class ReusableCard extends StatelessWidget {ReusableCard(
{required this.colour, this.cardChild = Container(), this.onPress = () {}});

  final Color colour;
  final Widget cardChild;
  final Function onPress;

  @override
  Widget build(BuildContext context) {
    return GestureDetector(
      onTap: () {
        onPress;
      },
      child: Container(
        child: cardChild,
        margin: EdgeInsets.all(15.0),
        decoration: BoxDecoration(
          borderRadius: BorderRadius.all(Radius.circular(15.0)),
          color: colour,
        ),
      ),
    );
  }
}
Run Code Online (Sandbox Code Playgroud)

widget dart flutter

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