Java Code Examples for android.view.View#postInvalidate()

The following examples show how to use android.view.View#postInvalidate() . These examples are extracted from open source projects. You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may want to check out the right sidebar which shows the related API usage.
Example 1
@Override
    protected void translateView(View view, boolean dir, float offset) {
        Log.d("wxy-motion", String.format("translateView setTag %s", offset));
        setViewOffset(view, offset);
        view.setPivotX(0.f);
        if (dir) {
            Log.d("wxy-motion", String.format("translateView setPivotY %s", 0));
            view.setPivotY(0.f);
        } else {
            view.setPivotY(view.getMeasuredHeight());
            Log.d("wxy-motion", String.format("translateView setPivotY %s", view.getMeasuredHeight()));
        }
        view.setScaleY(Math.min(getMaxScaleFactor(), (1.f + Math.abs(offset) / view.getWidth())));
        view.postInvalidate();

//        view.setTranslationY(offset);
    }
 
Example 2
@Override
    protected void translateView(View view, boolean dir, float offset) {
        Log.d("wxy-motion", String.format("translateView setTag %s", offset));
        setViewOffset(view, offset);
        view.setPivotY(0.f);
        if (dir) {
            Log.d("wxy-motion", String.format("setPivotX setTag %s", 0));
            view.setPivotX(0.f);
        } else {
            Log.d("wxy-motion", String.format("setPivotX setTag %s", view.getMeasuredWidth()));
            view.setPivotX(view.getMeasuredWidth());
        }
        view.setScaleX(Math.min(getMaxScaleFactor(), (1.f + Math.abs(offset) / view.getWidth())));
        view.postInvalidate();
//        view.setTranslationX(offset);
    }
 
Example 3
public void invalidate() {
    View view = mViewRef.get();

    if (view != null) {
        view.postInvalidate();
    }
}
 
Example 4
/**
 * @see android.view.View#postInvalidateOnAnimation()
 */
public static void postInvalidateOnAnimation(View view) {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
        view.postInvalidateOnAnimation();
    } else {
        view.postInvalidate();
    }
}
 
Example 5
/**
 * @see android.view.View#postInvalidateOnAnimation()
 */
public static void postInvalidateOnAnimation(View view) {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
        view.postInvalidateOnAnimation();
    } else {
        view.postInvalidate();
    }
}
 
Example 6
@Override
public boolean onTouch(View v, MotionEvent event) {

    if(v.getId()==R.id.cursor_left || v.getId()==R.id.cursor_right  ){
        int ea = event.getAction();
        //final int screenWidth = dm.widthPixels;
        //final int screenHeight = dm.heightPixels;
        switch(ea){
            case MotionEvent.ACTION_DOWN:
                lastX = (int) event.getRawX();// 获取触摸事件触摸位置的原始X坐标
                lastY = (int) event.getRawY();

                Log.e("获取触摸事件触摸位置的原始X坐标",lastX +":"+lastY);

                readLongPress.setVisibility(View.INVISIBLE);

                break;
            case MotionEvent.ACTION_MOVE:
                int dx = (int) event.getRawX() - lastX;
                int dy = (int) event.getRawY() - lastY;
                int l = v.getLeft() + dx;
                int b = v.getBottom() + dy;
                int r = v.getRight() + dx;
                int t = v.getTop() + dy;

                v.layout(l, t, r, b);
                lastX = (int) event.getRawX();
                lastY = (int) event.getRawY();
                v.postInvalidate();

                //移动过程中要画线
                pageView.setmCurrentMode(PageView.Mode.SelectMoveForward);


                int hh = cursorLeft.getHeight();
                int ww = cursorLeft.getWidth();
                if(pageView.getFirstSelectTxtChar()!=null) {
                    //cursorLeft.setX(pageView.getFirstSelectTxtChar().TopLeftPosition.x - ww / 2);
                    //cursorLeft.setY(pageView.getFirstSelectTxtChar().TopLeftPosition.y - hh);
                    //cursorRight.setX(pageView.getFirstSelectTxtChar().BottomRightPosition.x - ww / 2);
                    //cursorRight.setY(pageView.getFirstSelectTxtChar().BottomRightPosition.y);
                }

                if(v.getId()==R.id.cursor_left) {

                    pageView.setFirstSelectTxtChar(pageView.getCurrentTxtChar(lastX + ww / 2, lastY + hh));
                }else{
                    pageView.setLastSelectTxtChar(pageView.getCurrentTxtChar(lastX - ww / 2, lastY - hh));

                }

                //Log.e("sss",lastX +":"+lastY);

                //Log.e("sss",pageView.getmCurrentMode().toString());
                pageView.invalidate();

                break;
            case MotionEvent.ACTION_UP:

                showAction(v);
                //v.layout(l, t, r, b);



                break;
            default:
                break;
        };
    }else{
        //触摸其他部位清空选择。
        //pageView.clearSelect();
    }



    return true;

}
 
Example 7
@SuppressLint("ClickableViewAccessibility")
@Override
public boolean onTouch(View v, MotionEvent event) {

    if (v.getId() == R.id.cursor_left || v.getId() == R.id.cursor_right) {
        int ea = event.getAction();
        //final int screenWidth = dm.widthPixels;
        //final int screenHeight = dm.heightPixels;
        switch (ea) {
            case MotionEvent.ACTION_DOWN:
                lastX = (int) event.getRawX();// 获取触摸事件触摸位置的原始X坐标
                lastY = (int) event.getRawY();

                readLongPress.setVisibility(View.INVISIBLE);

                break;
            case MotionEvent.ACTION_MOVE:
                int dx = (int) event.getRawX() - lastX;
                int dy = (int) event.getRawY() - lastY;
                int l = v.getLeft() + dx;
                int b = v.getBottom() + dy;
                int r = v.getRight() + dx;
                int t = v.getTop() + dy;

                v.layout(l, t, r, b);
                lastX = (int) event.getRawX();
                lastY = (int) event.getRawY();
                v.postInvalidate();

                //移动过程中要画线
                pageView.setSelectMode(PageView.SelectMode.SelectMoveForward);

                int hh = cursorLeft.getHeight();
                int ww = cursorLeft.getWidth();

                if (v.getId() == R.id.cursor_left) {
                    pageView.setFirstSelectTxtChar(pageView.getCurrentTxtChar(lastX + ww, lastY - hh));
                } else {
                    pageView.setLastSelectTxtChar(pageView.getCurrentTxtChar(lastX - ww, lastY - hh));
                }

                pageView.invalidate();

                break;
            case MotionEvent.ACTION_UP:
                showAction(v);
                //v.layout(l, t, r, b);
                break;
            default:
                break;
        }
    }
    return true;
}
 
Example 8
Source Project: letv   File: ViewCompatJB.java    License: Apache License 2.0 4 votes vote down vote up
public static void postInvalidateOnAnimation(View view, int left, int top, int right, int bottom) {
    view.postInvalidate(left, top, right, bottom);
}
 
Example 9
Source Project: Autoinstall   File: ViewUtils.java    License: Apache License 2.0 4 votes vote down vote up
/**
 * 把postInvalidate换成这个方法
 * @param aView view
 */
public static void postInvalidate(View aView) {
    if (aView != null) {
        aView.postInvalidate();
    }
}
 
Example 10
Source Project: MiBandDecompiled   File: am.java    License: Apache License 2.0 4 votes vote down vote up
public static void a(View view, int i, int j, int k, int l)
{
    view.postInvalidate(i, j, k, l);
}
 
Example 11
public static void postInvalidateOnAnimation(View view, int left, int top,
        int right, int bottom) {
    view.postInvalidate(left, top, right, bottom);
}
 
Example 12
public static void postInvalidateOnAnimation(View view, int left, int top,
        int right, int bottom) {
    view.postInvalidate(left, top, right, bottom);
}
 
Example 13
Source Project: V.FlyoutTest   File: ViewCompatJB.java    License: MIT License 4 votes vote down vote up
public static void postInvalidateOnAnimation(View view, int left, int top,
        int right, int bottom) {
    view.postInvalidate(left, top, right, bottom);
}
 
Example 14
Source Project: guideshow   File: ViewCompatJB.java    License: MIT License 4 votes vote down vote up
public static void postInvalidateOnAnimation(View view, int left, int top,
        int right, int bottom) {
    view.postInvalidate(left, top, right, bottom);
}
 
Example 15
Source Project: SmartSwipe   File: ViewCompat.java    License: Apache License 2.0 3 votes vote down vote up
/**
 * <p>Cause an invalidate to happen on the next animation time step, typically the
 * next display frame.</p>
 *
 * <p>This method can be invoked from outside of the UI thread
 * only when this View is attached to a window.</p>
 *
 * @param view View to invalidate
 */
public static void postInvalidateOnAnimation(View view) {
    if (Build.VERSION.SDK_INT >= 16) {
        view.postInvalidateOnAnimation();
    } else {
        view.postInvalidate();
    }
}