首页 > 解决方案 > 如何动态更改屏幕标题

问题描述

我想将标题数据从一个屏幕(ChatModel.dart)传递到另一个屏幕。我创建了一个包含主题的模型,在本例中是屏幕的标题。

这是模型代码:

class User {
  final int id;
  final String topic;
  final String imageUrl;
  final bool isThereNewMessages;

  User({
    this.id,
    this.topic,
    this.imageUrl,
    this.isThereNewMessages,
  });
}

final User Members = User(
  id: 0,
  topic: 'New Members',
  imageUrl: 'https://...',
  isThereNewMessages: true,
);

final User Sell = User(
  id: 1,
  topic: 'Sell and Buy',
  imageUrl: 'https://i....',
  isThereNewMessages: true,
);

我需要做的是动态访问每个屏幕中的主题。我创建了一个变量来访问用户模型:

 final chat = User;

并导入文件。

然后我通过这样做访问:

Text(
            User.topic,
            textScaleFactor: 1.5,
            style: TextStyle(fontWeight: FontWeight.bold),
          ),

它不工作。我应该如何传递数据?

标签: flutter

解决方案


您正在访问 User 构造函数而不是Members变量。

改变

final chat = User;

final chat = Member;

然后

Text(
            chat.topic,
            textScaleFactor: 1.5,
            style: TextStyle(fontWeight: FontWeight.bold),
          ),

推荐阅读