FarawayPlayer 的 Kotlin 实现

FarawayPlayer 架构解析

FarawayPlayer 采用 MVP 架构,并利用以下组件实现交互:

1. BottomBar:

  • 底部导航栏使用 com.roughike:bottom-bar:2.3.1 实现。
  • 通过 tabs.xml 定义导航标签。

2. 动态 ToolBar:

  • 为满足三个组件的动态交互需求,ToolBar 需动态适配。

3. MVP 模式:

  • M 层 (Model): Utils 包中定义 ToolBarManager 接口,用于管理 ToolBar。
    • 创建 ToolBar 对象。
    • 定义初始化主界面标题的 Kotlin 接口 (Java 接口不支持默认实现)。
  • P 层 (Presenter):MACT 中实现 ToolBarManager 接口,继承 ToolBar 对象。
    • 使用惰性加载,确保线程安全,仅在初始化 ToolBar 时执行 findViewById

4. 布局:

  • 使用 toolbar 布局元素。
pdf 文件大小:83.68KB