Flutter 如何将切换按钮置于右侧

Flutter 如何将切换按钮置于右侧,flutter,dart,Flutter,Dart,我试图把我的切换按钮放在右边,但似乎找不到解决问题的办法 行( 儿童:[ 文本(“启用二维码”), 开关(值:isSwitched,onChanged:(值){ 设置状态(){ isSwitched=值; 打印(isSwitched); }); }, activeTrackColor:Colors.lightGreenAccent, activeColor:Colors.green, ), ], ),您应该在扩展的小部件中包装文本,或者使用开关列表互动程序并使用属性controlAffinit

我试图把我的切换按钮放在右边,但似乎找不到解决问题的办法

行(
儿童:[
文本(“启用二维码”),
开关(值:isSwitched,onChanged:(值){
设置状态(){
isSwitched=值;
打印(isSwitched);
});
},
activeTrackColor:Colors.lightGreenAccent,
activeColor:Colors.green,
),
],

),
您应该在扩展的小部件中包装文本,或者使用开关列表互动程序并使用属性controlAffinity

Row(children: [
      Expanded(child: Text("Enable QR Code")),
      Switch(value: isSwitched, onChanged:(value){
          setState(() {
             isSwitched=value;
             print(isSwitched);
          });
         },
         activeTrackColor: Colors.lightGreenAccent,
         activeColor: Colors.green,
        ),
   ],
 ),

使用行
mainAxisAlignment
属性

Row(
                          mainAxisAlignment: MainAxisAlignment.spaceBetween,
                          children: [
                            Text("Enable QR Code"),
                              Switch(value: isSwitched, onChanged:(value){
                              setState(() {
                                isSwitched=value;
                                print(isSwitched);
                              });
                            },
                              activeTrackColor: Colors.lightGreenAccent,
                              activeColor: Colors.green,
                            ),
                            ],
                           ),

在行窗口小部件中,您可以使用mainAxisAlignment属性设置子窗口小部件的对齐方式,因此在您的情况下,只需添加:
mainAxisAlignment:mainAxisAlignment.spaceBetween,

Row(
        mainAxisAlignment: MainAxisAlignment.spaceBetween,
        children: [
          Text("Enable QR Code"),
          Switch(value: isSwitched,
            onChanged:(value){
            setState(() {
              isSwitched=value;
              print(isSwitched);
            });
          },
            activeTrackColor: Colors.lightGreenAccent,
            activeColor: Colors.green,
          ),
        ],
      ),
  • 开始:将子对象放置在尽可能靠近主轴开始的位置

  • 结束:将子对象放置在尽可能靠近主轴末端的位置

  • 中心:将子对象放置在尽可能靠近主轴中心的位置

  • spaceAround:在两个孩子之间以及在第一个和最后一个孩子之前和之后,平均放置自由空间的一半

  • spaceBetween:在子对象之间均匀放置自由空间

  • 空间均匀:在子对象之间以及第一个和最后一个子对象之前和之后均匀放置自由空间


我不希望文本显示在右侧,只需切换按钮我只希望切换按钮显示在右侧,这样应该可以
Row(
        mainAxisAlignment: MainAxisAlignment.spaceBetween,
        children: [
          Text("Enable QR Code"),
          Switch(value: isSwitched,
            onChanged:(value){
            setState(() {
              isSwitched=value;
              print(isSwitched);
            });
          },
            activeTrackColor: Colors.lightGreenAccent,
            activeColor: Colors.green,
          ),
        ],
      ),