Giter Club home page Giter Club logo

Comments (3)

FASTSHIFT avatar FASTSHIFT commented on May 21, 2024

onFocus()在第一次页面进入显示完成时被onViewDidAppear()调用一次,是为了让group的第一个obj进入focus状态并且移动到对应位置。后面的onFocus()都是在拨动鼠标滚轮的时候被group调用。

from x-track.

leesum1 avatar leesum1 commented on May 21, 2024

onFocus()在第一次页面进入显示完成时被onViewDidAppear()调用一次,是为了让group的第一个obj进入focus状态并且移动到对应位置。后面的onFocus()都是在拨动鼠标滚轮的时候被group调用。
感谢!!

最终找到 group 回调函数如下:

页面调度器理解
PageManager 给用户提供的调度接口一共有三个

  1. Pop
  2. Push
  3. BackHome
    用户通过手动调用这三个接口,在不同页面之间切换。
    页面 Page 的状态如下
    /* Page state */
    typedef enum
    {
        PAGE_STATE_IDLE,
        PAGE_STATE_LOAD,
        PAGE_STATE_WILL_APPEAR,
        PAGE_STATE_DID_APPEAR,
        PAGE_STATE_ACTIVITY,
        PAGE_STATE_WILL_DISAPPEAR,
        PAGE_STATE_DID_DISAPPEAR,
        PAGE_STATE_UNLOAD,
        _PAGE_STATE_LAST
    } State_t;

不开启页面缓存下的切面调度流程如下图,所有页面都保存在一个 页面栈 中,栈顶为当前显示的页面。

如果开启页面缓存,主要是少了 PAGE_STATE_LOADPAGE_STATE_UNLOAD 的两个状态,不用每次切换页面时,重新构造组件,但也增加了内存开销。
这样理解没错吧!

from x-track.

FASTSHIFT avatar FASTSHIFT commented on May 21, 2024

onFocus()在第一次页面进入显示完成时被onViewDidAppear()调用一次,是为了让group的第一个obj进入focus状态并且移动到对应位置。后面的onFocus()都是在拨动鼠标滚轮的时候被group调用。
感谢!!

最终找到 group 回调函数如下:

页面调度器理解 PageManager 给用户提供的调度接口一共有三个

  1. Pop
  2. Push
  3. BackHome
    用户通过手动调用这三个接口,在不同页面之间切换。
    页面 Page 的状态如下
    /* Page state */
    typedef enum
    {
        PAGE_STATE_IDLE,
        PAGE_STATE_LOAD,
        PAGE_STATE_WILL_APPEAR,
        PAGE_STATE_DID_APPEAR,
        PAGE_STATE_ACTIVITY,
        PAGE_STATE_WILL_DISAPPEAR,
        PAGE_STATE_DID_DISAPPEAR,
        PAGE_STATE_UNLOAD,
        _PAGE_STATE_LAST
    } State_t;

不开启页面缓存下的切面调度流程如下图,所有页面都保存在一个 页面栈 中,栈顶为当前显示的页面。 如果开启页面缓存,主要是少了 PAGE_STATE_LOADPAGE_STATE_UNLOAD 的两个状态,不用每次切换页面时,重新构造组件,但也增加了内存开销。 这样理解没错吧!

是的,页面缓存的意义是为了保持页面上下文信息,切回的时候可以保持原样而不是被重置。

from x-track.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.