【问题标题】:How to give Vertical Spacing between each TableRow in Flutter Table如何在 Flutter Table 中的每个 TableRow 之间提供垂直间距
【发布时间】:2018-12-01 07:08:48
【问题描述】:

现在我正在添加带有两个空文本的 TableRow,如下所示。但我不认为这是一个解决方案。可能有一些我想念的东西。

Table(
    children:[
    TableRow(
    children: [
    Text('Investment needed'),
    Text(proposalDetailsData.maxInvestment) ]),

 TableRow(
    children: [
    Text(''),
    Text('')
    ]),
    ]);

    TableRow(
    children: [
    Text('Minimum Investment'),
    Text(proposalDetailsData.investmentRaised)
    ]),
    ]);

【问题讨论】:

    标签: flutter tablerow


    【解决方案1】:

    因为每个Activity 都有自己的ViewModelStore,并且每个ViewModelStore 创建一个不同的ViewModel 实例。您只能通过使用充当单例工厂的ViewModelFactory 来做到这一点,即在其create 方法中将始终返回相同的对象。

    我肯定会避免这种情况,也不会违背框架,并选择以下选项之一:

    1) 要跨 VM 保存、保留数据,您可以使用 Singleton Repository 或 Data Source

    2) 如果您坚持使用一个VM,您可以使用一个活动,一个带有三个片段的 ViewModel。 (IMO 这是最好的选择)

    【讨论】:

    • 感谢您清除概念。我会尝试第二个选项。
    【解决方案2】:

    您可以使用意图将值从活动 A 发送到活动 B。

    【讨论】:

    • 请在回答问题前正确阅读问题。我不想在活动之间或从活动中发送价值。我想在具有编辑文本以使用 mvvm 方法获取用户数据的活动中使用相同的视图模型初始化我的用户模型值。
    【解决方案3】:

    这个问题之前已经在 google 示例 repo 中提出过:https://github.com/googlesamples/android-architecture-components/issues/29

    该线程中提供的一个潜在解决方案是https://github.com/googlesamples/android-architecture-components/issues/29#issuecomment-351620004

    理想情况下,如果您使用一个主要活动而只使用片段来处理其他所有内容,那么共享同一个 ViewModel 实例会容易得多。

    希望对您有所帮助!

    【讨论】:

      猜你喜欢
      • 2011-02-14
      • 1970-01-01
      • 1970-01-01
      • 2013-07-01
      • 2019-01-25
      • 2016-06-05
      • 1970-01-01
      • 1970-01-01
      • 2013-10-15
      相关资源
      最近更新 更多