open class InboxRecyclerView : ScrollSuppressibleRecyclerView, InternalPageCallbacks
A RecyclerView where items can expand and collapse to and from an ExpandablePageLayout.
data class ExpandedItem : Parcelable |
InboxRecyclerView(context: Context, attrs: AttributeSet? = null)
A RecyclerView where items can expand and collapse to and from an ExpandablePageLayout. |
var expandablePage: ExpandablePageLayout?
The expandable page to be used with this list. Setting it to null will reset the older page's state. |
|
var expandedItem: InboxRecyclerView.ExpandedItem
Details about the currently expanded item. |
|
var itemExpandAnimator: ItemExpandAnimator
Controls how InboxRecyclerView items are animated when the page is moving. |
|
var tintPainter: TintPainter
Controls how items are dimmed when the page is expanding/collapsing. |
open fun canScrollProgrammatically(): Boolean |
|
fun collapse(): Unit |
|
open fun dispatchTouchEvent(ev: MotionEvent?): Boolean |
|
open fun draw(canvas: Canvas): Unit |
|
fun expandFromTop(immediate: Boolean = false): Unit
Expand from the top, pushing all items out of the window towards the bottom. |
|
fun expandItem(itemId: Long, immediate: Boolean = false): Unit |
|
open fun onDetachedFromWindow(): Unit |
|
open fun onPageAboutToCollapse(): Unit |
|
open fun onPageAboutToExpand(): Unit |
|
open fun onPageCollapsed(): Unit
Page is no longer visible at this point. |
|
open fun onPageFullyCovered(): Unit
Called when this page has fully covered the list. This can happen in two situations: |
|
open fun onPagePull(deltaY: Float): Unit
Page is being pulled. Sync the scroll with the list. |
|
open fun onPageRelease(collapseEligible: Boolean): Unit
Called when this page was released after being pulled. |
|
open fun onRestoreInstanceState(state: Parcelable): Unit |
|
open fun onSaveInstanceState(): Parcelable |
|
fun optimizeActivityBackgroundOverdraw(activity: Activity): Unit
Experimental: Reduce overdraw by 1 level by removing the Activity Window's background when the ExpandablePageLayout is expanded. No point in drawing it when it's not visible to the user. |
|
open fun setAdapter(adapter: Adapter<*>?): Unit |
|
open fun swapAdapter(adapter: Adapter<*>?, removeAndRecycleExistingViews: Boolean): Unit |
open fun scrollBy(x: Int, y: Int): Unit |
|
open fun scrollTo(x: Int, y: Int): Unit |
|
open fun scrollToPosition(position: Int): Unit |
|
open fun smoothScrollBy(dx: Int, dy: Int): Unit |
|
open fun smoothScrollToPosition(position: Int): Unit |
fun View.executeOnMeasure(listener: () -> Unit): Unit
Execute a runnable when a view's dimensions get measured and is laid out on the screen. |
|
fun View.executeOnNextLayout(listener: () -> Unit): Unit
Execute a runnable when the next global layout happens for a |
|
fun View.globalVisibleRect(): RectF |
|
fun View.locationOnScreen(loc: IntArray): Rect |