Example usage for android.view View SCROLLBAR_POSITION_RIGHT

List of usage examples for android.view View SCROLLBAR_POSITION_RIGHT

Introduction

In this page you can find the example usage for android.view View SCROLLBAR_POSITION_RIGHT.

Prototype

int SCROLLBAR_POSITION_RIGHT

To view the source code for android.view View SCROLLBAR_POSITION_RIGHT.

Click Source Link

Document

Position the scroll bar along the right edge.

Usage

From source file:com.appunite.list.FastScroller.java

public void setScrollbarPosition(int position) {
    if (position == View.SCROLLBAR_POSITION_DEFAULT) {
        position = Compat.isLayoutRtl(mList) ? View.SCROLLBAR_POSITION_LEFT : View.SCROLLBAR_POSITION_RIGHT;
    }//from   ww w .j av  a  2s. c o  m
    mPosition = position;
    switch (position) {
    default:
    case View.SCROLLBAR_POSITION_RIGHT:
        mOverlayDrawable = mOverlayDrawableRight;
        break;
    case View.SCROLLBAR_POSITION_LEFT:
        mOverlayDrawable = mOverlayDrawableLeft;
        break;
    }
}

From source file:com.appunite.list.FastScroller.java

private void resetThumbPos() {
    final int viewWidth = mList.getWidth();
    // Bounds are always top right. Y coordinate get's translated during draw
    switch (mPosition) {
    case View.SCROLLBAR_POSITION_RIGHT:
        mThumbDrawable.setBounds(viewWidth - mThumbW, 0, viewWidth, mThumbH);
        break;/*w w  w .j  a va 2  s .c o  m*/
    case View.SCROLLBAR_POSITION_LEFT:
        mThumbDrawable.setBounds(0, 0, mThumbW, mThumbH);
        break;
    }
    mThumbDrawable.setAlpha(ScrollFade.ALPHA_MAX);
}

From source file:com.appunite.list.FastScroller.java

public void draw(Canvas canvas) {

    if (mState == STATE_NONE) {
        // No need to draw anything
        return;/*from   ww  w  .  j a  v  a  2  s.c  o m*/
    }

    final int y = mThumbY;
    final int viewWidth = mList.getWidth();
    final FastScroller.ScrollFade scrollFade = mScrollFade;

    int alpha = -1;
    if (mState == STATE_EXIT) {
        alpha = scrollFade.getAlpha();
        if (alpha < ScrollFade.ALPHA_MAX / 2) {
            mThumbDrawable.setAlpha(alpha * 2);
        }
        int left = 0;
        switch (mPosition) {
        case View.SCROLLBAR_POSITION_RIGHT:
            left = viewWidth - (mThumbW * alpha) / ScrollFade.ALPHA_MAX;
            break;
        case View.SCROLLBAR_POSITION_LEFT:
            left = -mThumbW + (mThumbW * alpha) / ScrollFade.ALPHA_MAX;
            break;
        }
        mThumbDrawable.setBounds(left, 0, left + mThumbW, mThumbH);
        mChangedBounds = true;
    }

    if (mTrackDrawable != null) {
        final Rect thumbBounds = mThumbDrawable.getBounds();
        final int left = thumbBounds.left;
        final int halfThumbHeight = (thumbBounds.bottom - thumbBounds.top) / 2;
        final int trackWidth = mTrackDrawable.getIntrinsicWidth();
        final int trackLeft = (left + mThumbW / 2) - trackWidth / 2;
        mTrackDrawable.setBounds(trackLeft, halfThumbHeight, trackLeft + trackWidth,
                mList.getHeight() - halfThumbHeight);
        mTrackDrawable.draw(canvas);
    }

    canvas.translate(0, y);
    mThumbDrawable.draw(canvas);
    canvas.translate(0, -y);

    // If user is dragging the scroll bar, draw the alphabet overlay
    if (mState == STATE_DRAGGING && mDrawOverlay) {
        if (mOverlayPosition == OVERLAY_AT_THUMB) {
            int left = 0;
            switch (mPosition) {
            default:
            case View.SCROLLBAR_POSITION_RIGHT:
                left = Math.max(0, mThumbDrawable.getBounds().left - mThumbW - mOverlaySize);
                break;
            case View.SCROLLBAR_POSITION_LEFT:
                left = Math.min(mThumbDrawable.getBounds().right + mThumbW, mList.getWidth() - mOverlaySize);
                break;
            }

            int top = Math.max(0, Math.min(y + (mThumbH - mOverlaySize) / 2, mList.getHeight() - mOverlaySize));

            final RectF pos = mOverlayPos;
            pos.left = left;
            pos.right = pos.left + mOverlaySize;
            pos.top = top;
            pos.bottom = pos.top + mOverlaySize;
            if (mOverlayDrawable != null) {
                mOverlayDrawable.setBounds((int) pos.left, (int) pos.top, (int) pos.right, (int) pos.bottom);
            }
        }
        mOverlayDrawable.draw(canvas);
        final Paint paint = mPaint;
        float descent = paint.descent();
        final RectF rectF = mOverlayPos;
        final Rect tmpRect = mTmpRect;
        mOverlayDrawable.getPadding(tmpRect);
        final int hOff = (tmpRect.right - tmpRect.left) / 2;
        final int vOff = (tmpRect.bottom - tmpRect.top) / 2;
        canvas.drawText(mSectionText, (int) (rectF.left + rectF.right) / 2 - hOff,
                (int) (rectF.bottom + rectF.top) / 2 + mOverlaySize / 4 - descent - vOff, paint);
    } else if (mState == STATE_EXIT) {
        if (alpha == 0) { // Done with exit
            setState(STATE_NONE);
        } else if (mTrackDrawable != null) {
            mList.invalidate(viewWidth - mThumbW, 0, viewWidth, mList.getHeight());
        } else {
            mList.invalidate(viewWidth - mThumbW, y, viewWidth, y + mThumbH);
        }
    }
}

From source file:com.appunite.list.FastScroller.java

void onSizeChanged(int w, int h, int oldw, int oldh) {
    if (mThumbDrawable != null) {
        switch (mPosition) {
        default:/* ww  w.j  a va  2 s. c o m*/
        case View.SCROLLBAR_POSITION_RIGHT:
            mThumbDrawable.setBounds(w - mThumbW, 0, w, mThumbH);
            break;
        case View.SCROLLBAR_POSITION_LEFT:
            mThumbDrawable.setBounds(0, 0, mThumbW, mThumbH);
            break;
        }
    }
    if (mOverlayPosition == OVERLAY_FLOATING) {
        final RectF pos = mOverlayPos;
        pos.left = (w - mOverlaySize) / 2;
        pos.right = pos.left + mOverlaySize;
        pos.top = h / 10; // 10% from top
        pos.bottom = pos.top + mOverlaySize;
        if (mOverlayDrawable != null) {
            mOverlayDrawable.setBounds((int) pos.left, (int) pos.top, (int) pos.right, (int) pos.bottom);
        }
    }
}

From source file:org.solovyev.android.messenger.BaseListFragment.java

protected void fillListView(@Nonnull ListView lv, @Nonnull Context context) {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ECLAIR) {
        lv.setScrollbarFadingEnabled(true);
    }/*ww w.  j  av  a 2 s.c  o m*/
    lv.setBackgroundDrawable(null);
    lv.setCacheColorHint(Color.TRANSPARENT);
    ListViewScroller.createAndAttach(lv, this);
    lv.setFastScrollEnabled(true);

    lv.setTextFilterEnabled(false);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.GINGERBREAD) {
        lv.setOverscrollFooter(null);
    }

    lv.setVerticalFadingEdgeEnabled(false);
    lv.setFocusable(false);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        lv.setVerticalScrollbarPosition(View.SCROLLBAR_POSITION_RIGHT);
    }
    lv.setDivider(new ColorDrawable(Color.LTGRAY));
    lv.setDividerHeight(1);
}

From source file:com.granita.tasks.TaskListFragment.java

@TargetApi(Build.VERSION_CODES.HONEYCOMB)
public void setListViewScrollbarPositionLeft(boolean left) {
    if (android.os.Build.VERSION.SDK_INT >= 11) {
        if (left) {
            mExpandableListView.setVerticalScrollbarPosition(View.SCROLLBAR_POSITION_LEFT);
            // expandLV.setScrollBarStyle(style);
        } else {//from   w  w  w  .j  a va2s  .  com
            mExpandableListView.setVerticalScrollbarPosition(View.SCROLLBAR_POSITION_RIGHT);
        }
    }
}

From source file:com.appunite.list.FastScroller.java

boolean isPointInside(float x, float y) {
    boolean inTrack = false;
    switch (mPosition) {
    default:/* ww w . j av a  2s.  c  o m*/
    case View.SCROLLBAR_POSITION_RIGHT:
        inTrack = x > mList.getWidth() - mThumbW;
        break;
    case View.SCROLLBAR_POSITION_LEFT:
        inTrack = x < mThumbW;
        break;
    }

    // Allow taps in the track to start moving.
    return inTrack && (mTrackDrawable != null || y >= mThumbY && y <= mThumbY + mThumbH);
}

From source file:com.android.contacts.activities.PeopleActivity.java

private int getScrollBarPosition() {
    return isRTL() ? View.SCROLLBAR_POSITION_LEFT : View.SCROLLBAR_POSITION_RIGHT;
}

From source file:com.android.contacts.list.DefaultContactBrowseListFragment.java

private int getScrollBarPosition() {
    final Locale locale = Locale.getDefault();
    final boolean isRTL = TextUtils.getLayoutDirectionFromLocale(locale) == View.LAYOUT_DIRECTION_RTL;
    return isRTL ? View.SCROLLBAR_POSITION_LEFT : View.SCROLLBAR_POSITION_RIGHT;
}