【问题标题】:How to add trailng icon in radio list tile flutter如何在单选列表平铺颤动中添加尾随图标
【发布时间】:2019-10-23 14:54:38
【问题描述】:

我正在使用RadioListTile 来显示带有单选按钮的动态数据,但是我想显示相同的列表,并带有一个尾随图标来编辑列出数据。

  • 你能帮我在颤振中做到这一点吗?

                 RadioListTile(
                            groupValue: _currentIndex,
                            title: Text(
    //                                          addres["address_1"],
                              addres["firstname"] +
                                  addres["lastname"] +
                                  addres["address_1"] +
                                  addres["city"] +
                                  addres["country"],
                              overflow: TextOverflow.ellipsis,
                              maxLines: 3,
                              style: TextStyle(color: Colors.black, fontSize: 16.0),
                            ),
                            value: int.parse(addres["address_id"]),
                            onChanged: (val) {
                              setState(() {
                                _currentIndex = val;
                                Navigator.push(
                                    context,
                                    MaterialPageRoute(
                                        builder: (context) => PickanAddresspage(selected_address: addres['address_id'],)));
                              });
                            },
    
                          )
    

【问题讨论】:

  • 检查this link
  • 我正在添加我尝试过的代码 ..in 我想添加图标按钮

标签: flutter radiobuttonlist


【解决方案1】:

在 title 中,您可以使用 Row 来换行 Text 和 Icon
使用 Expanded 和 flex 来控制您需要的宽度
代码sn-p

title: Row(
        children: <Widget>[
          Expanded(
            flex: 3,
            child: Text(
              "firstname" +
                  "lastname" +
                  "address_1" +
                  "city" +
                  "country234123412344523523452542345234523523542345245234523452345235234523452345245234523452452542",
              overflow: TextOverflow.ellipsis,
              maxLines: 3,
              style: TextStyle(color: Colors.black, fontSize: 16.0),
            ),
          ),
          Expanded(
            flex: 1,
            child: InkWell(
              child: Icon(
                Icons.audiotrack,
                color: Colors.green,
                size: 30.0,
              ),
            ),
          )
        ],
      )

完整的测试代码

// Flutter code sample for

// ![RadioListTile sample](https://flutter.github.io/assets-for-api-docs/assets/material/radio_list_tile.png)
//
// This widget shows a pair of radio buttons that control the `_character`
// field. The field is of the type `SingingCharacter`, an enum.

import 'package:flutter/material.dart';

void main() => runApp(MyApp());

/// This Widget is the main application widget.
class MyApp extends StatelessWidget {
  static const String _title = 'Flutter Code Sample';

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: _title,
      home: Scaffold(
        appBar: AppBar(title: const Text(_title)),
        body: MyStatefulWidget(),
      ),
    );
  }
}

enum SingingCharacter { lafayette, jefferson }

class MyStatefulWidget extends StatefulWidget {
  MyStatefulWidget({Key key}) : super(key: key);

  @override
  _MyStatefulWidgetState createState() => _MyStatefulWidgetState();
}

class _MyStatefulWidgetState extends State<MyStatefulWidget> {
  SingingCharacter _character = SingingCharacter.lafayette;

  @override
  Widget build(BuildContext context) {
    return Column(
      children: <Widget>[
        RadioListTile<SingingCharacter>(
          title: const Text('Lafayette'),
          value: SingingCharacter.lafayette,
          groupValue: _character,
          onChanged: (SingingCharacter value) {
            setState(() {
              _character = value;
            });
          },
        ),
        RadioListTile<SingingCharacter>(
          title: Row(
            children: <Widget>[
              Expanded(
                flex: 3,
                child: Text(
                  "firstname" +
                      "lastname" +
                      "address_1" +
                      "city" +
                      "country234123412344523523452542345234523523542345245234523452345235234523452345245234523452452542",
                  overflow: TextOverflow.ellipsis,
                  maxLines: 3,
                  style: TextStyle(color: Colors.black, fontSize: 16.0),
                ),
              ),
              Expanded(
                flex: 1,
                child: InkWell(
                  child: Icon(
                    Icons.audiotrack,
                    color: Colors.green,
                    size: 30.0,
                  ),
                ),
              )
            ],
          ),
          value: SingingCharacter.jefferson,
          groupValue: _character,
          onChanged: (SingingCharacter value) {
            setState(() {
              _character = value;
            });
          },
        ),
      ],
    );
  }
}

【讨论】:

    猜你喜欢
    • 2020-11-22
    • 1970-01-01
    • 2020-07-26
    • 2020-12-30
    • 1970-01-01
    • 1970-01-01
    • 2013-05-21
    • 1970-01-01
    • 2021-10-26
    相关资源
    最近更新 更多