AndBase开发框架  1.5.7
 全部  命名空间 文件 函数 变量 枚举值 
| Public 成员函数 | 静态 Public 属性 | Protected 成员函数 | Protected 属性 | 静态 Protected 属性 | 包函数 | 静态包函数 | 包属性 | 静态包属性 | Private 成员函数 | Private 属性 | 静态 Private 属性 | 所有成员列表
com.ab.view.pullview.AbMultiColumnBaseAbsListView类 参考abstract
类 com.ab.view.pullview.AbMultiColumnBaseAbsListView 继承关系图:
com.ab.view.pullview.AbMultiColumnAbsListView com.ab.view.pullview.AbMultiColumnBaseListView com.ab.view.pullview.AbMultiColumnListView

class  CheckForTap
 
class  FlingRunnable
 
class  LayoutParams
 
interface  OnScrollListener
 
class  PerformClick
 
class  PositionScroller
 
class  RecycleBin
 
interface  RecyclerListener
 
class  WindowRunnnable
 

Public 成员函数

 AbMultiColumnBaseAbsListView (Context context)
 
 AbMultiColumnBaseAbsListView (Context context, AttributeSet attrs)
 
void setSmoothScrollbarEnabled (boolean enabled)
 
.ExportedProperty boolean isSmoothScrollbarEnabled ()
 
void setOnScrollListener (OnScrollListener l)
 
.ExportedProperty boolean isScrollingCacheEnabled ()
 
void setScrollingCacheEnabled (boolean enabled)
 
void getFocusedRect (Rect r)
 
.ExportedProperty boolean isStackFromBottom ()
 
void setStackFromBottom (boolean stackFromBottom)
 
void onRestoreInstanceState (Parcelable state)
 
void requestLayout ()
 
.ExportedProperty View getSelectedView ()
 
int getListPaddingTop ()
 
int getListPaddingBottom ()
 
int getListPaddingLeft ()
 
int getListPaddingRight ()
 
void setDrawSelectorOnTop (boolean onTop)
 
void setSelector (int resID)
 
void setSelector (Drawable sel)
 
Drawable getSelector ()
 
boolean verifyDrawable (Drawable dr)
 
void onWindowFocusChanged (boolean hasWindowFocus)
 
boolean showContextMenuForChild (View originalView)
 
boolean onKeyDown (int keyCode, KeyEvent event)
 
int pointToPosition (int x, int y)
 
long pointToRowId (int x, int y)
 
void onTouchModeChanged (boolean isInTouchMode)
 
boolean onTouchEvent (MotionEvent ev)
 
boolean onInterceptTouchEvent (MotionEvent ev)
 
void addTouchables (ArrayList< View > views)
 
void smoothScrollToPosition (int position)
 
void smoothScrollToPosition (int position, int boundPosition)
 
void smoothScrollBy (int distance, int duration)
 
void invalidateViews ()
 
void onGlobalLayout ()
 
LayoutParams generateLayoutParams (AttributeSet attrs)
 
void setTranscriptMode (int mode)
 
int getTranscriptMode ()
 
int getSolidColor ()
 
void setCacheColorHint (int color)
 
int getCacheColorHint ()
 
void reclaimViews (List< View > views)
 
void setRecyclerListener (RecyclerListener listener)
 

静态 Public 属性

static final int TRANSCRIPT_MODE_DISABLED = 0
 
static final int TRANSCRIPT_MODE_NORMAL = 1
 
static final int TRANSCRIPT_MODE_ALWAYS_SCROLL = 2
 

Protected 成员函数

int computeVerticalScrollExtent ()
 
int computeVerticalScrollOffset ()
 
int computeVerticalScrollRange ()
 
float getTopFadingEdgeStrength ()
 
float getBottomFadingEdgeStrength ()
 
void onMeasure (int widthMeasureSpec, int heightMeasureSpec)
 
void onLayout (boolean changed, int l, int t, int r, int b)
 
void layoutChildren ()
 
void dispatchDraw (Canvas canvas)
 
void onSizeChanged (int w, int h, int oldw, int oldh)
 
boolean shouldShowSelector ()
 
void drawableStateChanged ()
 
int[] onCreateDrawableState (int extraSpace)
 
void onAttachedToWindow ()
 
void onDetachedFromWindow ()
 
ContextMenuInfo getContextMenuInfo ()
 
void dispatchSetPressed (boolean pressed)
 
void tryOffsetChildrenTopAndBottom (int offset)
 
void handleDataChanged ()
 
void onLayoutSync (int syncPosition)
 
void onLayoutSyncFinished (int syncPosition)
 
ViewGroup.LayoutParams generateLayoutParams (ViewGroup.LayoutParams p)
 
boolean checkLayoutParams (ViewGroup.LayoutParams p)
 
int modifyFlingInitialVelocity (int initialVelocity)
 
int getScrollChildTop ()
 
int getFirstChildTop ()
 
int getFillChildTop ()
 
int getFillChildBottom ()
 
int getScrollChildBottom ()
 

Protected 属性

ListAdapter mAdapter
 
Rect mListPadding = new Rect()
 
int mWidthMeasureSpec = 0
 
boolean mCachingStarted
 
int mMotionPosition
 
int mTouchMode = TOUCH_MODE_REST
 

静态 Protected 属性

static final int TOUCH_MODE_DOWN = 0
 
static final int TOUCH_MODE_TAP = 1
 
static final int TOUCH_MODE_DONE_WAITING = 2
 
static final int TOUCH_MODE_SCROLL = 3
 
static final int TOUCH_MODE_FLING = 4
 
static final boolean DEBUG = false
 

包函数

void invokeOnItemScrollListener ()
 
void requestLayoutIfNecessary ()
 
void resetList ()
 
View obtainView (int position, boolean[] isScrap)
 
void positionSelector (View sel)
 
boolean touchModeDrawsInPressedState ()
 
ContextMenuInfo createContextMenuInfo (View view, int position, long id)
 
void reportScrollStateChange (int newState)
 
boolean trackMotionScroll (int deltaY, int incrementalDeltaY)
 
int getHeaderViewsCount ()
 
int getFooterViewsCount ()
 
abstract void fillGap (boolean down)
 
abstract int findMotionRow (int y)
 
int findClosestMotionRow (int y)
 

静态包函数

static int getDistance (Rect source, Rect dest, int direction)
 

包属性

int mLayoutMode = LAYOUT_NORMAL
 
AdapterDataSetObserver mDataSetObserver
 
boolean mDrawSelectorOnTop = false
 
Drawable mSelector
 
Rect mSelectorRect = new Rect()
 
final RecycleBin mRecycler = new RecycleBin()
 
int mSelectionLeftPadding = 0
 
int mSelectionTopPadding = 0
 
int mSelectionRightPadding = 0
 
int mSelectionBottomPadding = 0
 
int mMotionViewOriginalTop
 
int mMotionViewNewTop
 
int mMotionX
 
int mMotionY
 
int mLastY
 
int mMotionCorrection
 
int mSelectedTop = 0
 
boolean mStackFromBottom
 
boolean mScrollingCacheEnabled
 
int mResurrectToPosition = INVALID_POSITION
 
final boolean[] mIsScrap = new boolean[1]
 

静态包属性

static final int TOUCH_MODE_REST = -1
 
static final int LAYOUT_NORMAL = 0
 
static final int LAYOUT_FORCE_TOP = 1
 
static final int LAYOUT_SET_SELECTION = 2
 
static final int LAYOUT_FORCE_BOTTOM = 3
 
static final int LAYOUT_SPECIFIC = 4
 
static final int LAYOUT_SYNC = 5
 
static final int LAYOUT_MOVE_SELECTION = 6
 

Private 成员函数

void initAbsListView ()
 
void useDefaultSelector ()
 
void positionSelector (int l, int t, int r, int b)
 
void drawSelector (Canvas canvas)
 
boolean startScrollIfNeeded (int deltaY)
 
void onSecondaryPointerUp (MotionEvent ev)
 
void createScrollingCache ()
 
void clearScrollingCache ()
 
void dispatchFinishTemporaryDetach (View v)
 

Private 属性

VelocityTracker mVelocityTracker
 
FlingRunnable mFlingRunnable
 
PositionScroller mPositionScroller
 
OnScrollListener mOnScrollListener
 
boolean mSmoothScrollbarEnabled = true
 
Rect mTouchFrame
 
ContextMenuInfo mContextMenuInfo = null
 
int mLastTouchMode = TOUCH_MODE_UNKNOWN
 
boolean mScrollProfilingStarted = false
 
boolean mFlingProfilingStarted = false
 
Runnable mPendingCheckForTap
 
AbMultiColumnBaseAbsListView.PerformClick mPerformClick
 
int mTranscriptMode
 
int mCacheColorHint
 
boolean mIsChildViewEnabled
 
int mLastScrollState = OnScrollListener.SCROLL_STATE_IDLE
 
int mTouchSlop
 
Runnable mClearScrollingCache
 
int mMinimumVelocity
 
int mMaximumVelocity
 
int mActivePointerId = INVALID_POINTER
 

静态 Private 属性

static final int TOUCH_MODE_UNKNOWN = -1
 
static final int TOUCH_MODE_ON = 0
 
static final int TOUCH_MODE_OFF = 1
 
static final boolean PROFILE_SCROLLING = false
 
static final boolean PROFILE_FLINGING = false
 
static final int INVALID_POINTER = -1
 
static final String TAG = "PLA_AbsListView"
 

详细描述

Base class that can be used to implement virtualized lists of items. A list does not have a spatial definition here. For instance, subclases of this class can display the content of the list in a grid, in a carousel, as stack, etc.

构造及析构函数说明

com.ab.view.pullview.AbMultiColumnBaseAbsListView.AbMultiColumnBaseAbsListView ( Context  context)
inline
com.ab.view.pullview.AbMultiColumnBaseAbsListView.AbMultiColumnBaseAbsListView ( Context  context,
AttributeSet  attrs 
)
inline

成员函数说明

void com.ab.view.pullview.AbMultiColumnBaseAbsListView.addTouchables ( ArrayList< View >  views)
inline
boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.checkLayoutParams ( ViewGroup.LayoutParams  p)
inlineprotected
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.clearScrollingCache ( )
inlineprivate
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.computeVerticalScrollExtent ( )
inlineprotected
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.computeVerticalScrollOffset ( )
inlineprotected
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.computeVerticalScrollRange ( )
inlineprotected
ContextMenuInfo com.ab.view.pullview.AbMultiColumnBaseAbsListView.createContextMenuInfo ( View  view,
int  position,
long  id 
)
inlinepackage

Creates the ContextMenuInfo returned from getContextMenuInfo(). This methods knows the view, position and ID of the item that received the long press.

参数
viewThe view that received the long press.
positionThe position of the item that received the long press.
idThe ID of the item that received the long press.
返回
The extra information that should be returned by getContextMenuInfo().
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.createScrollingCache ( )
inlineprivate
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.dispatchDraw ( Canvas  canvas)
inlineprotected
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.dispatchFinishTemporaryDetach ( View  v)
inlineprivate
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.dispatchSetPressed ( boolean  pressed)
inlineprotected
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.drawableStateChanged ( )
inlineprotected
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.drawSelector ( Canvas  canvas)
inlineprivate
abstract void com.ab.view.pullview.AbMultiColumnBaseAbsListView.fillGap ( boolean  down)
packagepure virtual

Fills the gap left open by a touch-scroll. During a touch scroll, children that remain on screen are shifted and the other ones are discarded. The role of this method is to fill the gap thus created by performing a partial layout in the empty space.

参数
downtrue if the scroll is going down, false if it is going up

com.ab.view.pullview.AbMultiColumnAbsListView 内被实现.

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.findClosestMotionRow ( int  y)
inlinepackage

Find the row closest to y. This row will be used as the motion row when scrolling.

参数
yWhere the user touched
返回
The position of the first (or only) item in the row closest to y
abstract int com.ab.view.pullview.AbMultiColumnBaseAbsListView.findMotionRow ( int  y)
packagepure virtual

Find the row closest to y. This row will be used as the motion row when scrolling

参数
yWhere the user touched
返回
The position of the first (or only) item in the row containing y

com.ab.view.pullview.AbMultiColumnAbsListView 内被实现.

ViewGroup.LayoutParams com.ab.view.pullview.AbMultiColumnBaseAbsListView.generateLayoutParams ( ViewGroup.LayoutParams  p)
inlineprotected
LayoutParams com.ab.view.pullview.AbMultiColumnBaseAbsListView.generateLayoutParams ( AttributeSet  attrs)
inline
float com.ab.view.pullview.AbMultiColumnBaseAbsListView.getBottomFadingEdgeStrength ( )
inlineprotected
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.getCacheColorHint ( )
inline

When set to a non-zero value, the cache color hint indicates that this list is always drawn on top of a solid, single-color, opaque background

返回
The cache color hint
ContextMenuInfo com.ab.view.pullview.AbMultiColumnBaseAbsListView.getContextMenuInfo ( )
inlineprotected
static int com.ab.view.pullview.AbMultiColumnBaseAbsListView.getDistance ( Rect  source,
Rect  dest,
int  direction 
)
inlinestaticpackage

What is the distance between the source and destination rectangles given the direction of focus navigation between them? The direction basically helps figure out more quickly what is self evident by the relationship between the rects...

参数
sourcethe source rectangle
destthe destination rectangle
directionthe direction
返回
the distance between the rectangles
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.getFillChildBottom ( )
inlineprotected
返回
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.getFillChildTop ( )
inlineprotected
返回
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.getFirstChildTop ( )
inlineprotected
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.getFocusedRect ( Rect  r)
inline
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.getFooterViewsCount ( )
inlinepackage

Returns the number of footer views in the list. Footer views are special views at the bottom of the list that should not be recycled during a layout.

返回
The number of footer views, 0 in the default implementation.
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.getHeaderViewsCount ( )
inlinepackage

Returns the number of header views in the list. Header views are special views at the top of the list that should not be recycled during a layout.

返回
The number of header views, 0 in the default implementation.
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.getListPaddingBottom ( )
inline

List padding is the maximum of the normal view's padding and the padding of the selector.

参见
android.view.View::getPaddingBottom()
getSelector()
返回
The bottom list padding.
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.getListPaddingLeft ( )
inline

List padding is the maximum of the normal view's padding and the padding of the selector.

参见
android.view.View::getPaddingLeft()
getSelector()
返回
The left list padding.
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.getListPaddingRight ( )
inline

List padding is the maximum of the normal view's padding and the padding of the selector.

参见
android.view.View::getPaddingRight()
getSelector()
返回
The right list padding.
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.getListPaddingTop ( )
inline

List padding is the maximum of the normal view's padding and the padding of the selector.

参见
android.view.View::getPaddingTop()
getSelector()
返回
The top list padding.
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.getScrollChildBottom ( )
inlineprotected
返回
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.getScrollChildTop ( )
inlineprotected

used in order to determine fill list more or not.

返回
.ExportedProperty View com.ab.view.pullview.AbMultiColumnBaseAbsListView.getSelectedView ( )
inline
Drawable com.ab.view.pullview.AbMultiColumnBaseAbsListView.getSelector ( )
inline

Returns the selector android.graphics.drawable.Drawable that is used to draw the selection in the list.

返回
the drawable used to display the selector
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.getSolidColor ( )
inline
float com.ab.view.pullview.AbMultiColumnBaseAbsListView.getTopFadingEdgeStrength ( )
inlineprotected
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.getTranscriptMode ( )
inline

Returns the current transcript mode.

返回
TRANSCRIPT_MODE_DISABLED, TRANSCRIPT_MODE_NORMAL or TRANSCRIPT_MODE_ALWAYS_SCROLL
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.handleDataChanged ( )
inlineprotected
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.initAbsListView ( )
inlineprivate
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.invalidateViews ( )
inline

Causes all the views to be rebuilt and redrawn.

void com.ab.view.pullview.AbMultiColumnBaseAbsListView.invokeOnItemScrollListener ( )
inlinepackage

Notify our scroll listener (if there is one) of a change in scroll state

.ExportedProperty boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.isScrollingCacheEnabled ( )
inline

Indicates whether the children's drawing cache is used during a scroll. By default, the drawing cache is enabled but this will consume more memory.

返回
true if the scrolling cache is enabled, false otherwise
参见
setScrollingCacheEnabled(boolean)
View::setDrawingCacheEnabled(boolean)
.ExportedProperty boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.isSmoothScrollbarEnabled ( )
inline

Returns the current state of the fast scroll feature.

返回
True if smooth scrollbar is enabled is enabled, false otherwise.
参见
setSmoothScrollbarEnabled(boolean)
.ExportedProperty boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.isStackFromBottom ( )
inline

Indicates whether the content of this view is pinned to, or stacked from, the bottom edge.

返回
true if the content is stacked from the bottom edge, false otherwise
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.layoutChildren ( )
inlineprotected

Subclasses must override this method to layout their children.

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.modifyFlingInitialVelocity ( int  initialVelocity)
inlineprotected
View com.ab.view.pullview.AbMultiColumnBaseAbsListView.obtainView ( int  position,
boolean[]  isScrap 
)
inlinepackage

Get a view and have it show the data associated with the specified position. This is called when we have already discovered that the view is not available for reuse in the recycle bin. The only choices left are converting an old view or making a new one.

参数
positionThe position to display
isScrapArray of at least 1 boolean, the first entry will become true if the returned view was taken from the scrap heap, false if otherwise.
返回
A view displaying the data associated with the specified position
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.onAttachedToWindow ( )
inlineprotected
int [] com.ab.view.pullview.AbMultiColumnBaseAbsListView.onCreateDrawableState ( int  extraSpace)
inlineprotected
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.onDetachedFromWindow ( )
inlineprotected
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.onGlobalLayout ( )
inline
boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.onInterceptTouchEvent ( MotionEvent  ev)
inline
boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.onKeyDown ( int  keyCode,
KeyEvent  event 
)
inline
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.onLayout ( boolean  changed,
int  l,
int  t,
int  r,
int  b 
)
inlineprotected

Subclasses should NOT override this method but layoutChildren() instead.

void com.ab.view.pullview.AbMultiColumnBaseAbsListView.onLayoutSync ( int  syncPosition)
inlineprotected

adapter data is changed.. should keep current view layout information..

参数
mSyncPosition
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.onLayoutSyncFinished ( int  syncPosition)
inlineprotected

adapter data is changed.. children layout manipulation is finished.

参数
mSyncPosition
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.onMeasure ( int  widthMeasureSpec,
int  heightMeasureSpec 
)
inlineprotected
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.onRestoreInstanceState ( Parcelable  state)
inline
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.onSecondaryPointerUp ( MotionEvent  ev)
inlineprivate
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.onSizeChanged ( int  w,
int  h,
int  oldw,
int  oldh 
)
inlineprotected
boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.onTouchEvent ( MotionEvent  ev)
inline
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.onTouchModeChanged ( boolean  isInTouchMode)
inline
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.onWindowFocusChanged ( boolean  hasWindowFocus)
inline
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.pointToPosition ( int  x,
int  y 
)
inline

Maps a point to a position in the list.

参数
xX in local coordinate
yY in local coordinate
返回
The position of the item which contains the specified point, or INVALID_POSITION if the point does not intersect an item.
long com.ab.view.pullview.AbMultiColumnBaseAbsListView.pointToRowId ( int  x,
int  y 
)
inline

Maps a point to a the rowId of the item which intersects that point.

参数
xX in local coordinate
yY in local coordinate
返回
The rowId of the item which contains the specified point, or INVALID_ROW_ID if the point does not intersect an item.
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.positionSelector ( View  sel)
inlinepackage
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.positionSelector ( int  l,
int  t,
int  r,
int  b 
)
inlineprivate
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.reclaimViews ( List< View >  views)
inline

Move all views (excluding headers and footers) held by this AbsListView into the supplied List. This includes views displayed on the screen as well as views stored in AbsListView's internal view recycler.

参数
viewsA list into which to put the reclaimed views
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.reportScrollStateChange ( int  newState)
inlinepackage

Fires an "on scroll state changed" event to the registered android.widget.AbsListView.OnScrollListener, if any. The state change is fired only if the specified state is different from the previously known state.

参数
newStateThe new scroll state.
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.requestLayout ( )
inline
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.requestLayoutIfNecessary ( )
inlinepackage
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.resetList ( )
inlinepackage

The list is empty. Clear everything out.

void com.ab.view.pullview.AbMultiColumnBaseAbsListView.setCacheColorHint ( int  color)
inline

When set to a non-zero value, the cache color hint indicates that this list is always drawn on top of a solid, single-color, opaque background

参数
colorThe background color
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.setDrawSelectorOnTop ( boolean  onTop)
inline

Controls whether the selection highlight drawable should be drawn on top of the item or behind it.

参数
onTopIf true, the selector will be drawn on the item it is highlighting. The default is false.

ref android.R.styleable::AbsListView_drawSelectorOnTop

void com.ab.view.pullview.AbMultiColumnBaseAbsListView.setOnScrollListener ( OnScrollListener  l)
inline

Set the listener that will receive notifications every time the list scrolls.

参数
lthe scroll listener
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.setRecyclerListener ( RecyclerListener  listener)
inline

Sets the recycler listener to be notified whenever a View is set aside in the recycler for later reuse. This listener can be used to free resources associated to the View.

参数
listenerThe recycler listener to be notified of views set aside in the recycler.
参见
android.widget.AbMultiColumnBaseAbsListView.RecycleBin
android.widget.AbsListView.RecyclerListener
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.setScrollingCacheEnabled ( boolean  enabled)
inline

Enables or disables the children's drawing cache during a scroll. By default, the drawing cache is enabled but this will use more memory.

When the scrolling cache is enabled, the caches are kept after the first scrolling. You can manually clear the cache by calling android.view.ViewGroup#setChildrenDrawingCacheEnabled(boolean).

参数
enabledtrue to enable the scroll cache, false otherwise
参见
isScrollingCacheEnabled()
View::setDrawingCacheEnabled(boolean)
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.setSelector ( int  resID)
inline

Set a Drawable that should be used to highlight the currently selected item.

参数
resIDA Drawable resource to use as the selection highlight.

ref android.R.styleable::AbsListView_listSelector

void com.ab.view.pullview.AbMultiColumnBaseAbsListView.setSelector ( Drawable  sel)
inline
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.setSmoothScrollbarEnabled ( boolean  enabled)
inline

When smooth scrollbar is enabled, the position and size of the scrollbar thumb is computed based on the number of visible pixels in the visible items. This however assumes that all list items have the same height. If you use a list in which items have different heights, the scrollbar will change appearance as the user scrolls through the list. To avoid this issue, you need to disable this property.

When smooth scrollbar is disabled, the position and size of the scrollbar thumb is based solely on the number of items in the adapter and the position of the visible items inside the adapter. This provides a stable scrollbar as the user navigates through a list of items with varying heights.

参数
enabledWhether or not to enable smooth scrollbar.
参见
setSmoothScrollbarEnabled(boolean) ref android.R.styleable::AbsListView_smoothScrollbar
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.setStackFromBottom ( boolean  stackFromBottom)
inline

When stack from bottom is set to true, the list fills its content starting from the bottom of the view.

参数
stackFromBottomtrue to pin the view's content to the bottom edge, false to pin the view's content to the top edge
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.setTranscriptMode ( int  mode)
inline

Puts the list or grid into transcript mode. In this mode the list or grid will always scroll to the bottom to show new items.

参数
modethe transcript mode to set
参见
TRANSCRIPT_MODE_DISABLED
TRANSCRIPT_MODE_NORMAL
TRANSCRIPT_MODE_ALWAYS_SCROLL
boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.shouldShowSelector ( )
inlineprotected

Indicates whether this view is in a state where the selector should be drawn. This will happen if we have focus but are not in touch mode, or we are in the middle of displaying the pressed state for an item.

返回
True if the selector should be shown
boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.showContextMenuForChild ( View  originalView)
inline
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.smoothScrollBy ( int  distance,
int  duration 
)
inline

Smoothly scroll by distance pixels over duration milliseconds.

参数
distanceDistance to scroll in pixels.
durationDuration of the scroll animation in milliseconds.
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.smoothScrollToPosition ( int  position)
inline

Smoothly scroll to the specified adapter position. The view will scroll such that the indicated position is displayed.

参数
positionScroll to this adapter position.
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.smoothScrollToPosition ( int  position,
int  boundPosition 
)
inline

Smoothly scroll to the specified adapter position. The view will scroll such that the indicated position is displayed, but it will stop early if scrolling further would scroll boundPosition out of view.

参数
positionScroll to this adapter position.
boundPositionDo not scroll if it would move this adapter position out of view.
boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.startScrollIfNeeded ( int  deltaY)
inlineprivate
boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.touchModeDrawsInPressedState ( )
inlinepackage
返回
True if the current touch mode requires that we draw the selector in the pressed state.
boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.trackMotionScroll ( int  deltaY,
int  incrementalDeltaY 
)
inlinepackage

Track a motion scroll

参数
deltaYAmount to offset mMotionView. This is the accumulated delta since the motion began. Positive numbers mean the user's finger is moving down the screen.
incrementalDeltaYChange in deltaY from the previous event.
返回
true if we're already at the beginning/end of the list and have nothing to do.
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.tryOffsetChildrenTopAndBottom ( int  offset)
inlineprotected
void com.ab.view.pullview.AbMultiColumnBaseAbsListView.useDefaultSelector ( )
inlineprivate
boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.verifyDrawable ( Drawable  dr)
inline

类成员变量说明

final boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.DEBUG = false
staticprotected
final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.INVALID_POINTER = -1
staticprivate

Sentinel value for no current active pointer. Used by mActivePointerId.

final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.LAYOUT_FORCE_BOTTOM = 3
staticpackage

Show the last item

final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.LAYOUT_FORCE_TOP = 1
staticpackage

Show the first item

final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.LAYOUT_MOVE_SELECTION = 6
staticpackage

Layout as a result of using the navigation keys

final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.LAYOUT_NORMAL = 0
staticpackage

Regular layout - usually an unsolicited layout from the view system

final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.LAYOUT_SET_SELECTION = 2
staticpackage

Force the selected item to be on somewhere on the screen

final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.LAYOUT_SPECIFIC = 4
staticpackage

Make a mSelectedItem appear in a specific location and build the rest of the views from there. The top is specified by mSpecificTop.

final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.LAYOUT_SYNC = 5
staticpackage

Layout to sync as a result of a data change. Restore mSyncPosition to have its top at mSpecificTop

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mActivePointerId = INVALID_POINTER
private

ID of the active pointer. This is used to retain consistency during drags/flings if multiple pointers are used.

ListAdapter com.ab.view.pullview.AbMultiColumnBaseAbsListView.mAdapter
protected

The adapter containing the data to be displayed by this view

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mCacheColorHint
private

Indicates that this list is always drawn on top of a solid, single-color, opaque background

boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.mCachingStarted
protected

When the view is scrolling, this flag is set to true to indicate subclasses that the drawing cache was enabled on the children

Runnable com.ab.view.pullview.AbMultiColumnBaseAbsListView.mClearScrollingCache
private
ContextMenuInfo com.ab.view.pullview.AbMultiColumnBaseAbsListView.mContextMenuInfo = null
private
AdapterDataSetObserver com.ab.view.pullview.AbMultiColumnBaseAbsListView.mDataSetObserver
package

Should be used by subclasses to listen to changes in the dataset

boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.mDrawSelectorOnTop = false
package

Indicates whether the list selector should be drawn on top of the children or behind

boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.mFlingProfilingStarted = false
private
FlingRunnable com.ab.view.pullview.AbMultiColumnBaseAbsListView.mFlingRunnable
private

Handles one frame of a fling

boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.mIsChildViewEnabled
private

The select child's view (from the adapter's getView) is enabled.

final boolean [] com.ab.view.pullview.AbMultiColumnBaseAbsListView.mIsScrap = new boolean[1]
package
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mLastScrollState = OnScrollListener.SCROLL_STATE_IDLE
private

The last scroll state reported to clients through OnScrollListener.

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mLastTouchMode = TOUCH_MODE_UNKNOWN
private
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mLastY
package

Y value from on the previous motion event (if any)

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mLayoutMode = LAYOUT_NORMAL
package

Controls how the next layout will happen

Rect com.ab.view.pullview.AbMultiColumnBaseAbsListView.mListPadding = new Rect()
protected

This view's padding

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mMaximumVelocity
private
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mMinimumVelocity
private
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mMotionCorrection
package

How far the finger moved before we started scrolling

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mMotionPosition
protected

The position of the view that received the down motion event

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mMotionViewNewTop
package

The desired offset to the top of the mMotionPosition view after a scroll

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mMotionViewOriginalTop
package

The offset to the top of the mMotionPosition view when the down motion event was received

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mMotionX
package

The X value associated with the the down motion event

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mMotionY
package

The Y value associated with the the down motion event

OnScrollListener com.ab.view.pullview.AbMultiColumnBaseAbsListView.mOnScrollListener
private

Optional callback to notify client when scroll position has changed

Runnable com.ab.view.pullview.AbMultiColumnBaseAbsListView.mPendingCheckForTap
private

The last CheckForTap runnable we posted, if any

AbMultiColumnBaseAbsListView.PerformClick com.ab.view.pullview.AbMultiColumnBaseAbsListView.mPerformClick
private

Acts upon click

PositionScroller com.ab.view.pullview.AbMultiColumnBaseAbsListView.mPositionScroller
private

Handles scrolling between positions within the list.

final RecycleBin com.ab.view.pullview.AbMultiColumnBaseAbsListView.mRecycler = new RecycleBin()
package

The data set used to store unused views that should be reused during the next layout to avoid creating new ones

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mResurrectToPosition = INVALID_POSITION
package

The position to resurrect the selected position to.

boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.mScrollingCacheEnabled
package

When set to true, the list automatically discards the children's bitmap cache after scrolling.

boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.mScrollProfilingStarted = false
private
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mSelectedTop = 0
package

The offset in pixels form the top of the AdapterView to the top of the currently selected view. Used to save and restore state.

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mSelectionBottomPadding = 0
package

The selection's bottom padding

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mSelectionLeftPadding = 0
package

The selection's left padding

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mSelectionRightPadding = 0
package

The selection's right padding

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mSelectionTopPadding = 0
package

The selection's top padding

Drawable com.ab.view.pullview.AbMultiColumnBaseAbsListView.mSelector
package

The drawable used to draw the selector

Rect com.ab.view.pullview.AbMultiColumnBaseAbsListView.mSelectorRect = new Rect()
package

Defines the selector's location and dimension at drawing time

boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.mSmoothScrollbarEnabled = true
private

Indicates whether to use pixels-based or position-based scrollbar properties.

boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.mStackFromBottom
package

Indicates whether the list is stacked from the bottom edge or the top edge.

Rect com.ab.view.pullview.AbMultiColumnBaseAbsListView.mTouchFrame
private

Rectangle used for hit testing children

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mTouchMode = TOUCH_MODE_REST
protected

One of TOUCH_MODE_REST, TOUCH_MODE_DOWN, TOUCH_MODE_TAP, TOUCH_MODE_SCROLL, or TOUCH_MODE_DONE_WAITING

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mTouchSlop
private
int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mTranscriptMode
private

This view is in transcript mode – it shows the bottom of the list when the data changes

VelocityTracker com.ab.view.pullview.AbMultiColumnBaseAbsListView.mVelocityTracker
private

Determines speed during touch scrolling

int com.ab.view.pullview.AbMultiColumnBaseAbsListView.mWidthMeasureSpec = 0
protected

Subclasses must retain their measure spec from onMeasure() into this member

final boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.PROFILE_FLINGING = false
staticprivate
final boolean com.ab.view.pullview.AbMultiColumnBaseAbsListView.PROFILE_SCROLLING = false
staticprivate
final String com.ab.view.pullview.AbMultiColumnBaseAbsListView.TAG = "PLA_AbsListView"
staticprivate
final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.TOUCH_MODE_DONE_WAITING = 2
staticprotected

Indicates we have waited for everything we can wait for, but the user's finger is still down

final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.TOUCH_MODE_DOWN = 0
staticprotected

Indicates we just received the touch event and we are waiting to see if the it is a tap or a scroll gesture.

final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.TOUCH_MODE_FLING = 4
staticprotected

Indicates the view is in the process of being flung

final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.TOUCH_MODE_OFF = 1
staticprivate
final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.TOUCH_MODE_ON = 0
staticprivate
final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.TOUCH_MODE_REST = -1
staticpackage

Indicates that we are not in the middle of a touch gesture

final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.TOUCH_MODE_SCROLL = 3
staticprotected

Indicates the touch gesture is a scroll

final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.TOUCH_MODE_TAP = 1
staticprotected

Indicates the touch has been recognized as a tap and we are now waiting to see if the touch is a longpress

final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.TOUCH_MODE_UNKNOWN = -1
staticprivate

Used to request a layout when we changed touch mode

final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.TRANSCRIPT_MODE_ALWAYS_SCROLL = 2
static

The list will automatically scroll to the bottom, no matter what items are currently visible.

参见
setTranscriptMode(int)
final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.TRANSCRIPT_MODE_DISABLED = 0
static

Disables the transcript mode.

参见
setTranscriptMode(int)
final int com.ab.view.pullview.AbMultiColumnBaseAbsListView.TRANSCRIPT_MODE_NORMAL = 1
static

The list will automatically scroll to the bottom when a data set change notification is received and only if the last item is already visible on screen.

参见
setTranscriptMode(int)

该类的文档由以下文件生成: