【问题标题】:how I can change the distance between text and tile如何更改文本和瓷砖之间的距离
【发布时间】:2021-11-15 23:32:17
【问题描述】:

所以我的模态页面上有两个 SwitchListTiles,问题是文本不适合它。 (它需要 3 行,但应该是 1) How can I make it to be in one single line, without decreasing it's font size

child: SwitchListTile(
        value: state.filter.flagId == null ? false : true,
        onChanged: (newValue) =>
            context.read<FilterBloc>().add(HotPressed(newValue)),
        title: Text(
          AppLocalizations.of(context)!.hotAdds.capitalize(),
          style: FlutterFlowTheme.dark50016.copyWith(),
        ),
        tileColor: FlutterFlowTheme.white,
        activeColor: FlutterFlowTheme.primaryColor,
        dense: true,
        controlAffinity: ListTileControlAffinity.trailing,
      ),

我在想可能的答案可能是减少瓷砖之间的距离,但不知道该怎么做

【问题讨论】:

    标签: flutter dart mobile


    【解决方案1】:

    只需将“maxLines: 1”添加到文本小部件

    title: Text(
       AppLocalizations.of(context)!.hotAdds.capitalize(),
       style: FlutterFlowTheme.dark50016.copyWith(),
       maxLines: 1,
     ),
    

    【讨论】:

    • 对不起,文本的另一部分会消失,这不起作用((
    • 请看我留下的图
    【解决方案2】:

    在外边缘以及文本和开关之间有默认填充。从我可以看到外部填充(开关右侧和文本左侧的填充)默认为 16。您可以通过将 contentPadding 作为输入添加到 SwitchListTile 并将值设置为小于 16 来更改此值:

    contentPadding: EdgeInsets.symmetric(horizontal: 5),
    

    但我不确定您是否可以更改文本和开关之间的填充。

    【讨论】:

      【解决方案3】:

      将您的 text 小部件包装到 Flexibletrim() 您的文本以避免将输入(\n)作为字符串。 maxLines =1.

      title: Flexible(
                    child: Text(
                     AppLocalizations.of(context)!.hotAdds.capitalize().trim(),
                      style: FlutterFlowTheme.dark50016.copyWith(),
                      maxLines: 1,
                    ),
                  ),
      

      【讨论】:

        猜你喜欢
        • 2019-11-20
        • 2021-05-23
        • 2011-07-02
        • 1970-01-01
        • 1970-01-01
        • 2012-09-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多