android.support.v4.view.ViewCompat#setLayerType ( )源码实例Demo

下面列出了android.support.v4.view.ViewCompat#setLayerType ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: Android   文件: MaterialBadgeTextView.java
/**
 *
 * @param isDisplayInToolbarMenu
 */
public void setHighLightMode(boolean isDisplayInToolbarMenu){
    isHighLightMode = true;
    ViewGroup.LayoutParams params = getLayoutParams();
    params.width = ViewGroup.LayoutParams.WRAP_CONTENT;
    params.height = params.width;
    if(isDisplayInToolbarMenu && params instanceof FrameLayout.LayoutParams){
        ((FrameLayout.LayoutParams)params).topMargin=dp2px(getContext(), 10);
        ((FrameLayout.LayoutParams)params).rightMargin=dp2px(getContext(), 10);
    }
    setLayoutParams(params);

    final int diameter = getWidth() - (int) (2.5 * (float) mShadowRadius);
    OvalShadow oval = new OvalShadow(mShadowRadius, diameter);
    ShapeDrawable drawable = new ShapeDrawable(oval);
    ViewCompat.setLayerType(this, ViewCompat.LAYER_TYPE_SOFTWARE, drawable.getPaint());
    drawable.getPaint().setColor(backgroundColor);
    drawable.getPaint().setAntiAlias(true);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {
        setBackground(drawable);
    } else {
        setBackgroundDrawable(drawable);
    }
    setText("");
    setVisibility(View.VISIBLE);
}
 
源代码2 项目: V.FlyoutTest   文件: SlidingPaneLayout.java
private void dimChildView(View v, float mag, int fadeColor) {
    final LayoutParams lp = (LayoutParams) v.getLayoutParams();

    if (mag > 0 && fadeColor != 0) {
        final int baseAlpha = (fadeColor & 0xff000000) >>> 24;
        int imag = (int) (baseAlpha * mag);
        int color = imag << 24 | (fadeColor & 0xffffff);
        if (lp.dimPaint == null) {
            lp.dimPaint = new Paint();
        }
        lp.dimPaint.setColorFilter(new PorterDuffColorFilter(color, PorterDuff.Mode.SRC_OVER));
        if (ViewCompat.getLayerType(v) != ViewCompat.LAYER_TYPE_HARDWARE) {
            ViewCompat.setLayerType(v, ViewCompat.LAYER_TYPE_HARDWARE, lp.dimPaint);
        }
        invalidateChildRegion(v);
    } else if (ViewCompat.getLayerType(v) != ViewCompat.LAYER_TYPE_NONE) {
        if (lp.dimPaint != null) {
            lp.dimPaint.setColorFilter(null);
        }
        final DisableLayerRunnable dlr = new DisableLayerRunnable(v);
        mPostedRunnables.add(dlr);
        ViewCompat.postOnAnimation(this, dlr);
    }
}
 
源代码3 项目: CodenameOne   文件: SlidingPaneLayout.java
private void dimChildView(View v, float mag, int fadeColor) {
    final LayoutParams lp = (LayoutParams) v.getLayoutParams();

    if (mag > 0 && fadeColor != 0) {
        final int baseAlpha = (fadeColor & 0xff000000) >>> 24;
        int imag = (int) (baseAlpha * mag);
        int color = imag << 24 | (fadeColor & 0xffffff);
        if (lp.dimPaint == null) {
            lp.dimPaint = new Paint();
        }
        lp.dimPaint.setColorFilter(new PorterDuffColorFilter(color, PorterDuff.Mode.SRC_OVER));
        if (ViewCompat.getLayerType(v) != ViewCompat.LAYER_TYPE_HARDWARE) {
            ViewCompat.setLayerType(v, ViewCompat.LAYER_TYPE_HARDWARE, lp.dimPaint);
        }
        invalidateChildRegion(v);
    } else if (ViewCompat.getLayerType(v) != ViewCompat.LAYER_TYPE_NONE) {
        if (lp.dimPaint != null) {
            lp.dimPaint.setColorFilter(null);
        }
        final DisableLayerRunnable dlr = new DisableLayerRunnable(v);
        mPostedRunnables.add(dlr);
        ViewCompat.postOnAnimation(this, dlr);
    }
}
 
源代码4 项目: adt-leanback-support   文件: SlidingPaneLayout.java
private void dimChildView(View v, float mag, int fadeColor) {
    final LayoutParams lp = (LayoutParams) v.getLayoutParams();

    if (mag > 0 && fadeColor != 0) {
        final int baseAlpha = (fadeColor & 0xff000000) >>> 24;
        int imag = (int) (baseAlpha * mag);
        int color = imag << 24 | (fadeColor & 0xffffff);
        if (lp.dimPaint == null) {
            lp.dimPaint = new Paint();
        }
        lp.dimPaint.setColorFilter(new PorterDuffColorFilter(color, PorterDuff.Mode.SRC_OVER));
        if (ViewCompat.getLayerType(v) != ViewCompat.LAYER_TYPE_HARDWARE) {
            ViewCompat.setLayerType(v, ViewCompat.LAYER_TYPE_HARDWARE, lp.dimPaint);
        }
        invalidateChildRegion(v);
    } else if (ViewCompat.getLayerType(v) != ViewCompat.LAYER_TYPE_NONE) {
        if (lp.dimPaint != null) {
            lp.dimPaint.setColorFilter(null);
        }
        final DisableLayerRunnable dlr = new DisableLayerRunnable(v);
        mPostedRunnables.add(dlr);
        ViewCompat.postOnAnimation(this, dlr);
    }
}
 
源代码5 项目: ResideLayout   文件: ResideLayout.java
private void dimChildView(View v, float mag, int fadeColor) {
    final LayoutParams lp = (LayoutParams) v.getLayoutParams();

    if (mag > 0 && fadeColor != 0) {
        final int baseAlpha = (fadeColor & 0xff000000) >>> 24;
        int imag = (int) (baseAlpha * mag);
        int color = imag << 24 | (fadeColor & 0xffffff);
        if (lp.dimPaint == null) {
            lp.dimPaint = new Paint();
        }
        lp.dimPaint.setColorFilter(new PorterDuffColorFilter(color, PorterDuff.Mode.SRC_OVER));
        if (ViewCompat.getLayerType(v) != ViewCompat.LAYER_TYPE_HARDWARE) {
            ViewCompat.setLayerType(v, ViewCompat.LAYER_TYPE_HARDWARE, lp.dimPaint);
        }
        invalidateChildRegion(v);
    } else if (ViewCompat.getLayerType(v) != ViewCompat.LAYER_TYPE_NONE) {
        if (lp.dimPaint != null) {
            lp.dimPaint.setColorFilter(null);
        }
        final DisableLayerRunnable dlr = new DisableLayerRunnable(v);
        mPostedRunnables.add(dlr);
        ViewCompat.postOnAnimation(this, dlr);
    }
}
 
源代码6 项目: android-recipes-app   文件: SlidingPaneLayout.java
@Override
public void run() {
    if (mChildView.getParent() == SlidingPaneLayout.this) {
        ViewCompat.setLayerType(mChildView, ViewCompat.LAYER_TYPE_NONE, null);
        invalidateChildRegion(mChildView);
    }
    mPostedRunnables.remove(this);
}
 
源代码7 项目: fangzhuishushenqi   文件: DirectionalViewpager.java
private void enableLayers(boolean enable) {
    final int childCount = getChildCount();
    for (int i = 0; i < childCount; i++) {
        final int layerType = enable ?
                ViewCompat.LAYER_TYPE_HARDWARE : ViewCompat.LAYER_TYPE_NONE;
        ViewCompat.setLayerType(getChildAt(i), layerType, null);
    }
}
 
源代码8 项目: YViewPagerDemo   文件: YViewPager.java
private void enableLayers(boolean enable) {
    final int childCount = getChildCount();
    for (int i = 0; i < childCount; i++) {
        final int layerType = enable
                ? ViewCompat.LAYER_TYPE_HARDWARE : ViewCompat.LAYER_TYPE_NONE;
        ViewCompat.setLayerType(getChildAt(i), layerType, null);
    }
}
 
源代码9 项目: AndroidImageSlider   文件: ViewPagerEx.java
private void enableLayers(boolean enable) {
    final int childCount = getChildCount();
    for (int i = 0; i < childCount; i++) {
        final int layerType = enable ?
                ViewCompat.LAYER_TYPE_HARDWARE : ViewCompat.LAYER_TYPE_NONE;
        ViewCompat.setLayerType(getChildAt(i), layerType, null);
    }
}
 
源代码10 项目: FlippableStackView   文件: OrientedViewPager.java
private void enableLayers(boolean enable) {
    final int childCount = getChildCount();
    for (int i = 0; i < childCount; i++) {
        final int layerType = enable ?
                ViewCompat.LAYER_TYPE_HARDWARE : ViewCompat.LAYER_TYPE_NONE;
        ViewCompat.setLayerType(getChildAt(i), layerType, null);
    }
}
 
源代码11 项目: ncalc   文件: NineOldViewPager.java
private void enableLayers(boolean enable) {
    final int childCount = getChildCount();
    for (int i = 0; i < childCount; i++) {
        final int layerType = enable ?
                ViewCompat.LAYER_TYPE_HARDWARE : ViewCompat.LAYER_TYPE_NONE;
        ViewCompat.setLayerType(getChildAt(i), layerType, null);
    }
}
 
源代码12 项目: Rey-MusicPlayer   文件: VelocityViewPager.java
private void enableLayers(boolean enable) {
    final int childCount = getChildCount();
    for (int i = 0; i < childCount; i++) {
        final int layerType = enable ?
                ViewCompat.LAYER_TYPE_HARDWARE : ViewCompat.LAYER_TYPE_NONE;
        ViewCompat.setLayerType(getChildAt(i), layerType, null);
    }
}
 
源代码13 项目: Android-SlidingUpPanel   文件: SlidingUpPanel.java
private void enableLayers(boolean enable) {
	final int childCount = getChildCount();
	for (int i = 0; i < childCount; i++) {
		final int layerType = enable ?
				ViewCompat.LAYER_TYPE_HARDWARE : ViewCompat.LAYER_TYPE_NONE;
		ViewCompat.setLayerType(getChildAt(i), layerType, null);
	}
}
 
源代码14 项目: guideshow   文件: SlidingPaneLayout.java
@Override
public void run() {
    if (mChildView.getParent() == SlidingPaneLayout.this) {
        ViewCompat.setLayerType(mChildView, ViewCompat.LAYER_TYPE_NONE, null);
        invalidateChildRegion(mChildView);
    }
    mPostedRunnables.remove(this);
}
 
源代码15 项目: VCL-Android   文件: SlidingPaneLayout.java
@Override
public void run() {
    if (mChildView.getParent() == SlidingPaneLayout.this) {
        ViewCompat.setLayerType(mChildView, ViewCompat.LAYER_TYPE_NONE, null);
        invalidateChildRegion(mChildView);
    }
    mPostedRunnables.remove(this);
}
 
源代码16 项目: VerticalViewPager   文件: VerticalViewPager.java
private void enableLayers(boolean enable) {
    final int childCount = getChildCount();
    for (int i = 0; i < childCount; i++) {
        final int layerType = enable ?
                ViewCompat.LAYER_TYPE_HARDWARE : ViewCompat.LAYER_TYPE_NONE;
        ViewCompat.setLayerType(getChildAt(i), layerType, null);
    }
}
 
源代码17 项目: AndroidProjects   文件: SwipeBackLayout.java
@Override
public void run() {
    if (mChildView.getParent() == SwipeBackLayout.this) {
        ViewCompat.setLayerType(mChildView, ViewCompat.LAYER_TYPE_NONE, null);
        invalidateChildRegion(mChildView);
    }
    mPostedRunnables.remove(this);
}
 
源代码18 项目: android-project-wo2b   文件: ViewPagerCompat.java
private void enableLayers(boolean enable) {
    final int childCount = getChildCount();
    for (int i = 0; i < childCount; i++) {
        final int layerType = enable ?
                ViewCompat.LAYER_TYPE_HARDWARE : ViewCompat.LAYER_TYPE_NONE;
        ViewCompat.setLayerType(getChildAt(i), layerType, null);
    }
}
 
源代码19 项目: iGap-Android   文件: NavigationTabStrip.java
public NavigationTabStrip(final Context context, final AttributeSet attrs, final int defStyleAttr) {
    super(context, attrs, defStyleAttr);
    //Init NTS

    // Always draw
    setWillNotDraw(false);
    // Speed and fix for pre 17 API
    ViewCompat.setLayerType(this, ViewCompat.LAYER_TYPE_SOFTWARE, null);
    setLayerType(LAYER_TYPE_SOFTWARE, null);
    DEFAULT_TITLE_BADGE_TOP = (int) getResources().getDimension(R.dimen.dp12);
    PADDING = (int) getResources().getDimension(R.dimen.dp4);

    final TypedArray typedArray = context.obtainStyledAttributes(attrs, R.styleable.NavigationTabStrip);
    try {
        setStripColor(typedArray.getColor(R.styleable.NavigationTabStrip_nts_color, DEFAULT_STRIP_COLOR));
        setTitleSize(typedArray.getDimension(R.styleable.NavigationTabStrip_nts_size, DEFAULT_TITLE_SIZE));
        setStripWeight(typedArray.getDimension(R.styleable.NavigationTabStrip_nts_weight, DEFAULT_STRIP_WEIGHT));
        setStripFactor(typedArray.getFloat(R.styleable.NavigationTabStrip_nts_factor, DEFAULT_STRIP_FACTOR));
        setStripType(typedArray.getInt(R.styleable.NavigationTabStrip_nts_type, StripType.LINE_INDEX));
        setStripGravity(typedArray.getInt(R.styleable.NavigationTabStrip_nts_gravity, StripGravity.BOTTOM_INDEX));

        setTypeface(typedArray.getString(R.styleable.NavigationTabStrip_nts_typeface));
        setInactiveColor(typedArray.getColor(R.styleable.NavigationTabStrip_nts_inactive_color, DEFAULT_INACTIVE_COLOR));
        setActiveColor(typedArray.getColor(R.styleable.NavigationTabStrip_nts_active_color, DEFAULT_ACTIVE_COLOR));
        setAnimationDuration(typedArray.getInteger(R.styleable.NavigationTabStrip_nts_animation_duration, DEFAULT_ANIMATION_DURATION));
        setCornersRadius(typedArray.getDimension(R.styleable.NavigationTabStrip_nts_corners_radius, DEFAULT_CORNER_RADIUS));

        // Get titles
        String[] titles = null;
        try {
            final int titlesResId = typedArray.getResourceId(R.styleable.NavigationTabStrip_nts_titles, 0);
            titles = titlesResId == 0 ? null : typedArray.getResources().getStringArray(titlesResId);
        } catch (Exception exception) {
            titles = null;
            exception.printStackTrace();
        } finally {
            if (titles == null) {
                if (isInEditMode()) {
                    titles = new String[new Random().nextInt(5) + 1];
                    Arrays.fill(titles, PREVIEW_TITLE);
                } else {
                    titles = new String[0];
                }
            }

            setTitles(titles);
        }

        // Init animator
        mAnimator.setFloatValues(MIN_FRACTION, MAX_FRACTION);
        mAnimator.setInterpolator(new LinearInterpolator());
        mAnimator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
            @Override
            public void onAnimationUpdate(final ValueAnimator animation) {
                updateIndicatorPosition((Float) animation.getAnimatedValue());
            }
        });
    } finally {
        typedArray.recycle();
    }
}
 
源代码20 项目: ShadowViewHelper   文件: MainActivity.java
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    shadowViewA = findViewById(R.id.activity_main_shadow_view_a);
    shadowViewB = findViewById(R.id.activity_main_shadow_view_b);
    shadowViewC = findViewById(R.id.activity_main_shadow_view_c);
    shadowViewC.setOnClickListener(this);

    shadowImageC = findViewById(R.id.activity_main_shadow_view_c_iv);
    shadowViewD = findViewById(R.id.activity_main_shadow_view_d);

    shadowTvC = (TextView) findViewById(R.id.activity_main_shadow_view_c_tv);

    // all sides shadow
    ShadowProperty sp = new ShadowProperty()
            .setShadowColor(0x77000000)
            .setShadowDy(dip2px(this, 0.5f))
            .setShadowRadius(dip2px(this, 3))
            .setShadowSide(ShadowProperty.ALL);
    ShadowViewDrawable sd = new ShadowViewDrawable(sp, Color.WHITE, 0, 0);
    ViewCompat.setBackground(shadowViewA, sd);
    ViewCompat.setLayerType(shadowViewA, ViewCompat.LAYER_TYPE_SOFTWARE, null);

    // only left and top sides shadow
    sp = new ShadowProperty()
            .setShadowColor(0x77FF0000)
            .setShadowDy(dip2px(this, 0.5f))
            .setShadowRadius(dip2px(this, 3))
            .setShadowSide(ShadowProperty.LEFT | ShadowProperty.BOTTOM);
    sd = new ShadowViewDrawable(sp, Color.TRANSPARENT, 0, 0);
    ViewCompat.setBackground(shadowViewB, sd);
    ViewCompat.setLayerType(shadowViewB, ViewCompat.LAYER_TYPE_SOFTWARE, null);

    // only top and bottom sides shadow
    sp = new ShadowProperty()
            .setShadowColor(0x77000000)
            .setShadowDy(dip2px(this, 0.5f))
            .setShadowRadius(dip2px(this, 3))
            .setShadowSide(ShadowProperty.TOP | ShadowProperty.BOTTOM);
    sd = new ShadowViewDrawable(sp, Color.WHITE, 0, 0);
    ViewCompat.setBackground(shadowViewC, sd);
    ViewCompat.setLayerType(shadowViewC, ViewCompat.LAYER_TYPE_SOFTWARE, null);

    sp = new ShadowProperty()
            .setShadowColor(0x77000000)
            .setShadowDy(dip2px(this, 0.5f))
            .setShadowRadius(dip2px(this, 3))
            .setShadowSide(ShadowProperty.BOTTOM | ShadowProperty.RIGHT);
    sd = new ShadowViewDrawable(sp, Color.WHITE, 0, 0);
    ViewCompat.setBackground(shadowImageC, sd);
    ViewCompat.setLayerType(shadowImageC, ViewCompat.LAYER_TYPE_SOFTWARE, null);


    // only all sides except top shadow
    sp = new ShadowProperty()
            .setShadowColor(0x770000FF)
            .setShadowDy(dip2px(this, 0.5f))
            .setShadowRadius(dip2px(this, 3))
            .setShadowSide(ShadowProperty.LEFT | ShadowProperty.RIGHT | ShadowProperty.BOTTOM);
    sd = new ShadowViewDrawable(sp, Color.TRANSPARENT, 0, 0);
    ViewCompat.setBackground(shadowViewD, sd);
    ViewCompat.setLayerType(shadowViewD, ViewCompat.LAYER_TYPE_SOFTWARE, null);


}
 
 同类方法