Skip to main content

Activity

Trait Activity 

Source
pub trait Activity<R, H, C>: 'static
where R: Route, H: ActivityHost, C: Clone + Send + Sync,
{ // Required methods fn route(&self) -> R; fn update(&mut self, message: H::Message) -> Vec<H::Effect>; fn view(&self) -> H::View; // Provided methods fn subscription(&self) -> Option<H::Subscription> { ... } fn on_create(&mut self) -> Vec<H::Effect> { ... } fn on_resume(&mut self) -> Vec<H::Effect> { ... } fn on_pause(&mut self) -> Vec<H::Effect> { ... } fn on_destroy(&mut self) -> Vec<H::Effect> { ... } fn on_new_intent(&mut self, _intent: Intent<R>) -> Vec<H::Effect> { ... } }
Expand description

页面组件核心接口。

Required Methods§

Source

fn route(&self) -> R

返回当前页面的路由标识

Source

fn update(&mut self, message: H::Message) -> Vec<H::Effect>

处理业务逻辑更新,返回对应的 UI 副作用

Source

fn view(&self) -> H::View

渲染当前页面的独立视图

Provided Methods§

Source

fn subscription(&self) -> Option<H::Subscription>

订阅全局或底层系统事件

Source

fn on_create(&mut self) -> Vec<H::Effect>

页面首次创建,准备入栈

Source

fn on_resume(&mut self) -> Vec<H::Effect>

页面变为栈顶处于活跃状态(获得焦点)

Source

fn on_pause(&mut self) -> Vec<H::Effect>

页面被新页面覆盖,或准备销毁前(失去焦点)

Source

fn on_destroy(&mut self) -> Vec<H::Effect>

页面从任务栈中彻底移除

Source

fn on_new_intent(&mut self, _intent: Intent<R>) -> Vec<H::Effect>

页面被复用时(SingleTop / SingleTask / SingleInstance)接收新意图

Implementors§