Package io.rong.imkit.widget.refresh.api

## Interface RefreshKernel

- All Implemented Interfaces:

      public interface RefreshKernel

  刷新布局核心功能接口 为功能复杂的 Header 或者 Footer 开放的接口 Created by scwang on 2017/5/26.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---

  - ### Enum Constant Summary

    Enum Constants
    Enum Constant | Description
    --- | ---

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `abstract RefreshLayout` | `getRefreshLayout()` |
    `abstract RefreshContent` | `getRefreshContent()` |
    `abstract RefreshKernel` | `setState(RefreshState state)` |
    `abstract RefreshKernel` | `startTwoLevel(boolean open)` | 开始执行二极刷新
    `abstract RefreshKernel` | `finishTwoLevel()` | 结束关闭二极刷新
    `abstract RefreshKernel` | `moveSpinner(int spinner, boolean isDragging)` | 移动视图到指定位置 moveSpinner 的取名来自 谷歌官方的
    `abstract ValueAnimator` | `animSpinner(int endSpinner)` | 执行动画使视图位移到指定的 位置 moveSpinner 的取名来自 谷歌官方的
    `abstract RefreshKernel` | `requestDrawBackgroundFor(RefreshComponent internal, int backgroundColor)` | 指定在下拉时候为 Header 或 Footer 绘制背景
    `abstract RefreshKernel` | `requestNeedTouchEventFor(RefreshComponent internal, boolean request)` | 请求事件
    `abstract RefreshKernel` | `requestDefaultTranslationContentFor(RefreshComponent internal, boolean translation)` | 请求设置默认内容滚动设置
    `abstract RefreshKernel` | `requestRemeasureHeightFor(RefreshComponent internal)` | 请求重新测量 headerHeight 或 footerHeight , 要求 height 高度为 WRAP_CONTENT
    `abstract RefreshKernel` | `requestFloorDuration(int duration)` | 设置二楼回弹时长
    `abstract RefreshKernel` | `requestFloorBottomPullUpToCloseRate(float rate)` | 设置二楼底部上划关闭所占高度的比率

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

  - ### Method Detail

    - #### getRefreshLayout

           abstract RefreshLayout getRefreshLayout()

    - #### getRefreshContent

           abstract RefreshContent getRefreshContent()

    - #### setState

           abstract RefreshKernel setState(RefreshState state)

    - #### startTwoLevel

           abstract RefreshKernel startTwoLevel(boolean open)

      开始执行二极刷新

      Parameters:
        `open` - 是否展开
      Returns:

        RefreshKernel

    - #### finishTwoLevel

           abstract RefreshKernel finishTwoLevel()

      结束关闭二极刷新

      Returns:

        RefreshKernel

    - #### moveSpinner

           abstract RefreshKernel moveSpinner(int spinner, boolean isDragging)

      移动视图到指定位置 moveSpinner 的取名来自 谷歌官方的

      Parameters:
        `spinner` - 位置 (px)
        `isDragging` - true 手指正在拖动 false 回弹动画执行
      Returns:

        RefreshKernel

    - #### animSpinner

           abstract ValueAnimator animSpinner(int endSpinner)

      执行动画使视图位移到指定的 位置 moveSpinner 的取名来自 谷歌官方的

      Parameters:
        `endSpinner` - 指定的结束位置 (px)
      Returns:

        ValueAnimator 如果没有执行动画 null

    - #### requestDrawBackgroundFor

           abstract RefreshKernel requestDrawBackgroundFor(RefreshComponent internal, int backgroundColor)

      指定在下拉时候为 Header 或 Footer 绘制背景

      Parameters:
        `internal` - Header Footer 调用时传 this
        `backgroundColor` - 背景颜色
      Returns:

        RefreshKernel

    - #### requestNeedTouchEventFor

           abstract RefreshKernel requestNeedTouchEventFor(RefreshComponent internal, boolean request)

      请求事件

      Parameters:
        `internal` - Header Footer 调用时传 this
        `request` - 请求
      Returns:

        RefreshKernel

    - #### requestDefaultTranslationContentFor

           abstract RefreshKernel requestDefaultTranslationContentFor(RefreshComponent internal, boolean translation)

      请求设置默认内容滚动设置

      Parameters:
        `internal` - Header Footer 调用时传 this
        `translation` - 移动
      Returns:

        RefreshKernel

    - #### requestRemeasureHeightFor

           abstract RefreshKernel requestRemeasureHeightFor(RefreshComponent internal)

      请求重新测量 headerHeight 或 footerHeight , 要求 height 高度为 WRAP_CONTENT

      Parameters:
        `internal` - Header Footer 调用时传 this
      Returns:

        RefreshKernel

    - #### requestFloorDuration

           abstract RefreshKernel requestFloorDuration(int duration)

      设置二楼回弹时长

      Parameters:
        `duration` - 二楼回弹时长
      Returns:

        RefreshKernel

    - #### requestFloorBottomPullUpToCloseRate

           abstract RefreshKernel requestFloorBottomPullUpToCloseRate(float rate)

      设置二楼底部上划关闭所占高度的比率

      Returns:

        RefreshKernel