我应该如何告诉 flutter 我的应用程序需要在外部重建?
How should I tell flutter that my app needs rebuilding externally?
我希望我的应用获得意图,并根据意图在应用中显示某些内容。
通常,当一个小部件依赖于状态时,您将它放在一个状态中,然后 运行 setState()。
问题是,当我尝试以不同的意图启动我的 flutter 应用程序时,我只得到 I/FlutterActivityDelegate( 4472): onResume setting current activity to this
。在某种程度上它是有道理的——我没有在 flutter 代码中的任何地方说我的小部件需要重新绘制——因为我通过 Java.[=11= 得到了我的意图]
另一方面,应该有一种方法可以告诉 flutter 有意地重新绘制我的小部件吗?或者还有什么我应该做的吗?
特别是为了获得有关 onResume
事件的通知,您可以使用 WidgetsBindingObserver
. Implement its didChangeAppLifecycleState method and respond to AppLifecycleState.resumed 做任何您想让 UI 做的事情,例如调用 setState
来触发重建。也就是说,需要进行有效更改才能重新绘制 UI。简单地调用 setState
而没有有效的状态更改可能不会(事实上,不应该)导致实际的 UI 更改。
一般来说,您可以使用 BasicMessageChannel 从 Java(或 Objective-C/Swift)向 Flutter 发送消息,然后让您的应用对消息做出反应(例如调用 setState
或计划帧)。
我希望我的应用获得意图,并根据意图在应用中显示某些内容。
通常,当一个小部件依赖于状态时,您将它放在一个状态中,然后 运行 setState()。
问题是,当我尝试以不同的意图启动我的 flutter 应用程序时,我只得到 I/FlutterActivityDelegate( 4472): onResume setting current activity to this
。在某种程度上它是有道理的——我没有在 flutter 代码中的任何地方说我的小部件需要重新绘制——因为我通过 Java.[=11= 得到了我的意图]
另一方面,应该有一种方法可以告诉 flutter 有意地重新绘制我的小部件吗?或者还有什么我应该做的吗?
特别是为了获得有关 onResume
事件的通知,您可以使用 WidgetsBindingObserver
. Implement its didChangeAppLifecycleState method and respond to AppLifecycleState.resumed 做任何您想让 UI 做的事情,例如调用 setState
来触发重建。也就是说,需要进行有效更改才能重新绘制 UI。简单地调用 setState
而没有有效的状态更改可能不会(事实上,不应该)导致实际的 UI 更改。
一般来说,您可以使用 BasicMessageChannel 从 Java(或 Objective-C/Swift)向 Flutter 发送消息,然后让您的应用对消息做出反应(例如调用 setState
或计划帧)。