本文整理匯總了Java中android.widget.Scroller類的典型用法代碼示例。如果您正苦於以下問題:Java Scroller類的具體用法?Java Scroller怎麽用?Java Scroller使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
Scroller類屬於android.widget包,在下文中一共展示了Scroller類的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: BaseReadView
import android.widget.Scroller; //導入依賴的package包/類
public BaseReadView(Context context, String bookId, List<BookMixAToc.mixToc.Chapters> chaptersList,
OnReadStateChangeListener listener) {
super(context);
this.listener = listener;
this.bookId = bookId;
mScreenWidth = ScreenUtils.getScreenWidth();
mScreenHeight = ScreenUtils.getScreenHeight();
mCurPageBitmap = Bitmap.createBitmap(mScreenWidth, mScreenHeight, Bitmap.Config.ARGB_8888);
mNextPageBitmap = Bitmap.createBitmap(mScreenWidth, mScreenHeight, Bitmap.Config.ARGB_8888);
mCurrentPageCanvas = new Canvas(mCurPageBitmap);
mNextPageCanvas = new Canvas(mNextPageBitmap);
mScroller = new Scroller(getContext());
pagefactory = new PageFactory(getContext(), bookId, chaptersList);
pagefactory.setOnReadStateChangeListener(listener);
}
示例2: prepare
import android.widget.Scroller; //導入依賴的package包/類
private void prepare(AttributeSet attrs)
{
setFocusable(true);
setDescendantFocusability(FOCUS_AFTER_DESCENDANTS);
setWillNotDraw(false);
mScroller = new Scroller(getContext());
mScaleGestureDetector = new ScaleGestureDetector(getContext(), mScaleListener);
mGestureDetector = new GestureDetectorCompat(getContext(), mGestureListener);
if (attrs != null)
{
TypedArray a = getContext().obtainStyledAttributes(attrs, R.styleable.CustomViewExtension, 0, 0);
autoScrollMargins = a.getDimensionPixelSize(R.styleable.CustomViewExtension_autoScrollMargins, 0);
a.recycle();
}
mEdgeGlowLeft = new EdgeEffectCompat(getContext());
mEdgeGlowTop = new EdgeEffectCompat(getContext());
mEdgeGlowRight = new EdgeEffectCompat(getContext());
mEdgeGlowBottom = new EdgeEffectCompat(getContext());
setWillNotDraw(false);
}
示例3: setScrollerInterpolatorOrReCreateScroller
import android.widget.Scroller; //導入依賴的package包/類
public static Scroller setScrollerInterpolatorOrReCreateScroller(Context context,
Scroller scroller,
Interpolator interpolator) {
try {
if (sScrollerInterpolatorField == null) {
sScrollerInterpolatorField = Scroller.class.getDeclaredField("mInterpolator");
if (sScrollerInterpolatorField != null)
sScrollerInterpolatorField.setAccessible(true);
}
if (sScrollerInterpolatorField == null) {
return new Scroller(context, interpolator);
} else {
sScrollerInterpolatorField.set(scroller, interpolator);
return scroller;
}
} catch (Exception e) {
return new Scroller(context, interpolator);
}
}
示例4: init
import android.widget.Scroller; //導入依賴的package包/類
private void init() {
configuration = ViewConfiguration.get(getContext());
mScroller = new Scroller(getContext(), new OvershootInterpolator(0.75f));
flingRunnable = new FlingRunnable();
overScrollRunnable = new OverScrollRunnable();
flingScroller = new OverScroller(getContext());
detector = new GestureDetector(getContext(), new GestureDetector.SimpleOnGestureListener() {
@Override
public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) {
if (isOverScrollTop || isOverScrollBottom || isOverScrollLeft || isOverScrollRight) {
return false;
}
//
flingRunnable.start(velocityX, velocityY);
return false;
}
});
}
示例5: initView
import android.widget.Scroller; //導入依賴的package包/類
private synchronized void initView() {
mLeftViewIndex = -1;
mRightViewIndex = 0;
mDisplayOffset = 0;
mCurrentX = 0;
mNextX = 0;
mMaxX = Integer.MAX_VALUE;
mScroller = new Scroller(getContext());
mGesture = new GestureDetector(getContext(), mOnGesture);
DisplayMetrics displayMetrics = new DisplayMetrics();
((Activity)context).getWindowManager().getDefaultDisplay().getMetrics(displayMetrics);
screenWidth = displayMetrics.widthPixels-180;
verticalMinDistance = screenWidth/4;
}
示例6: initView
import android.widget.Scroller; //導入依賴的package包/類
private synchronized void initView() {
this.mLeftViewIndex = -1;
this.mRightViewIndex = 0;
this.mDisplayOffset = 0;
this.mCurrentX = 0;
this.mNextX = 0;
this.mFirstPosition = 0;
this.mSpecificPosition = 0;
this.mSpecificLeft = 0;
this.mMaxX = ActivityChooserViewAdapter.MAX_ACTIVITY_COUNT_UNLIMITED;
this.mMinX = Integer.MIN_VALUE;
this.mScroller = new Scroller(getContext());
if (!isInEditMode()) {
this.mGesture = new GestureDetector(getContext(), this.mOnGesture);
}
}
示例7: initWithContext
import android.widget.Scroller; //導入依賴的package包/類
private void initWithContext(Context context) {
setFadingEdgeLength(0); // 消除邊界模糊
setOverScrollMode(View.OVER_SCROLL_NEVER); // 消除滾動邊框
mScroller = new Scroller(context, new DecelerateInterpolator());
// XListView need the scroll event, and it will dispatch the event to
// user's listener (as a proxy).
super.setOnScrollListener(this);
// init header view
mHeaderView = new XListViewHeader(context);
mHeaderViewContent = (RelativeLayout) mHeaderView
.findViewById(R.id.xlistview_header_content);
mHeaderTimeView = (TextView) mHeaderView.findViewById(R.id.xlistview_header_time);
addHeaderView(mHeaderView);
// init footer view
mFooterView = new XListViewFooter(context);
// init header height
mHeaderView.getViewTreeObserver().addOnGlobalLayoutListener(
new OnGlobalLayoutListener() {
@SuppressWarnings("deprecation")
@Override
public void onGlobalLayout() {
mHeaderViewHeight = mHeaderViewContent.getHeight();
getViewTreeObserver()
.removeGlobalOnLayoutListener(this);
}
});
}
示例8: DocumentView
import android.widget.Scroller; //導入依賴的package包/類
public DocumentView(Context context, final ZoomModel zoomModel, DecodingProgressModel progressModel, CurrentPageModel currentPageModel) {
super(context);
this.zoomModel = zoomModel;
this.progressModel = progressModel;
this.currentPageModel = currentPageModel;
setKeepScreenOn(true);
scroller = new Scroller(getContext());
setFocusable(true);
setFocusableInTouchMode(true);
initMultiTouchZoomIfAvailable(zoomModel);
}
示例9: onScrollerFinished
import android.widget.Scroller; //導入依賴的package包/類
/**
* Callback invoked upon completion of a given <code>scroller</code>.
*/
private void onScrollerFinished(Scroller scroller) {
if (scroller == mFlingScroller) {
if (!ensureScrollWheelAdjusted()) {
updateInputTextView();
}
onScrollStateChange(OnScrollListener.SCROLL_STATE_IDLE);
} else {
if (mScrollState != OnScrollListener.SCROLL_STATE_TOUCH_SCROLL) {
updateInputTextView();
}
}
}
示例10: CompatScroller
import android.widget.Scroller; //導入依賴的package包/類
public CompatScroller(Context context) {
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.GINGERBREAD) {
isPreGingerbread = true;
scroller = new Scroller(context);
}
else {
isPreGingerbread = false;
overScroller = new OverScroller(context);
}
}
示例11: CompatScroller
import android.widget.Scroller; //導入依賴的package包/類
public CompatScroller(Context context) {
if (VERSION.SDK_INT < VERSION_CODES.GINGERBREAD) {
isPreGingerbread = true;
scroller = new Scroller(context);
} else {
isPreGingerbread = false;
overScroller = new OverScroller(context);
}
}
示例12: HLayoutContainer
import android.widget.Scroller; //導入依賴的package包/類
public HLayoutContainer(Context context, AttributeSet attrs) {
super(context, attrs);
// 獲取屏幕寬度
DisplayMetrics metric = new DisplayMetrics();
Display display = ((Activity) context).getWindowManager().getDefaultDisplay();
display.getMetrics(metric);
screenWidth = metric.widthPixels; // 屏幕寬度(像素)
padding = 36;
rightOffset = 60;
offset = 10;
mScroller = new Scroller(context);
// 由於動畫會導致view出現覆蓋,所以我們要打開order開關來主動改變view的繪製順序
setChildrenDrawingOrderEnabled(true);
}
示例13: initCustomViewAbove
import android.widget.Scroller; //導入依賴的package包/類
void initCustomViewAbove() {
setWillNotDraw(false);
setDescendantFocusability(FOCUS_AFTER_DESCENDANTS);
setFocusable(true);
final Context context = getContext();
mScroller = new Scroller(context, sInterpolator);
final ViewConfiguration configuration = ViewConfiguration.get(context);
mTouchSlop = ViewConfigurationCompat.getScaledPagingTouchSlop(configuration);
mMinimumVelocity = configuration.getScaledMinimumFlingVelocity();
mMaximumVelocity = configuration.getScaledMaximumFlingVelocity();
setInternalPageChangeListener(new SimpleOnPageChangeListener() {
public void onPageSelected(int position) {
if (mViewBehind != null) {
switch (position) {
case 0:
case 2:
mViewBehind.setChildrenEnabled(true);
break;
case 1:
mViewBehind.setChildrenEnabled(false);
break;
}
}
}
});
final float density = context.getResources().getDisplayMetrics().density;
mFlingDistance = (int) (MIN_DISTANCE_FOR_FLING * density);
}
示例14: initViewPager
import android.widget.Scroller; //導入依賴的package包/類
void initViewPager() {
setWillNotDraw(false);
setDescendantFocusability(FOCUS_AFTER_DESCENDANTS);
setFocusable(true);
final Context context = getContext();
mScroller = new Scroller(context, sInterpolator);
final ViewConfiguration configuration = ViewConfiguration.get(context);
final float density = context.getResources().getDisplayMetrics().density;
mTouchSlop = ViewConfigurationCompat.getScaledPagingTouchSlop(configuration);
mMinimumVelocity = (int) (MIN_FLING_VELOCITY * density);
mMaximumVelocity = configuration.getScaledMaximumFlingVelocity();
mLeftEdge = new EdgeEffectCompat(context);
mRightEdge = new EdgeEffectCompat(context);
mFlingDistance = (int) (MIN_DISTANCE_FOR_FLING * density);
mCloseEnough = (int) (CLOSE_ENOUGH * density);
mDefaultGutterSize = (int) (DEFAULT_GUTTER_SIZE * density);
ViewCompat.setAccessibilityDelegate(this, new MyAccessibilityDelegate());
if (ViewCompat.getImportantForAccessibility(this)
== ViewCompat.IMPORTANT_FOR_ACCESSIBILITY_AUTO) {
ViewCompat.setImportantForAccessibility(this,
ViewCompat.IMPORTANT_FOR_ACCESSIBILITY_YES);
}
}
示例15: onFinishInflate
import android.widget.Scroller; //導入依賴的package包/類
@Override
protected void onFinishInflate() {
super.onFinishInflate();
mRootLayout = new HorizontalScrollView(getContext());
mRootLayout.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT,LayoutParams.MATCH_PARENT));
mParentLayout = new LinearLayout(getContext());
mParentLayout.setOrientation(LinearLayout.HORIZONTAL);
mScroller = new Scroller(mRootLayout.getContext(), new DecelerateInterpolator(1.2f));
mParentLayout.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.MATCH_PARENT));
mRootLayout.addView(mParentLayout);
addView(mRootLayout);
}