Java Code Examples for android.view.View#setElevation()
The following examples show how to use
android.view.View#setElevation() .
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 check out the related API usage on the sidebar.
Example 1
Source Project: android_9.0.0_r45 File: ActivityTransitionCoordinator.java License: Apache License 2.0 | 6 votes |
protected static void setOriginalSharedElementState(ArrayList<View> sharedElements, ArrayList<SharedElementOriginalState> originalState) { for (int i = 0; i < originalState.size(); i++) { View view = sharedElements.get(i); SharedElementOriginalState state = originalState.get(i); if (view instanceof ImageView && state.mScaleType != null) { ImageView imageView = (ImageView) view; imageView.setScaleType(state.mScaleType); if (state.mScaleType == ImageView.ScaleType.MATRIX) { imageView.setImageMatrix(state.mMatrix); } } view.setElevation(state.mElevation); view.setTranslationZ(state.mTranslationZ); int widthSpec = View.MeasureSpec.makeMeasureSpec(state.mMeasuredWidth, View.MeasureSpec.EXACTLY); int heightSpec = View.MeasureSpec.makeMeasureSpec(state.mMeasuredHeight, View.MeasureSpec.EXACTLY); view.measure(widthSpec, heightSpec); view.layout(state.mLeft, state.mTop, state.mRight, state.mBottom); } }
Example 2
Source Project: 365browser File: ApiCompatibilityUtils.java License: Apache License 2.0 | 5 votes |
/** * Set elevation if supported. */ @TargetApi(Build.VERSION_CODES.LOLLIPOP) public static boolean setElevation(View view, float elevationValue) { if (!isElevationSupported()) return false; view.setElevation(elevationValue); return true; }
Example 3
Source Project: px-android File: ReviewAndConfirmActivity.java License: MIT License | 5 votes |
private void setFloatingElevationVisibility(final View floatingConfirmLayout, final boolean visible) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { final float elevationInPixels = visible ? getBaseContext().getResources().getDimension(R.dimen.px_xxs_margin) : 0; floatingConfirmLayout.setElevation(elevationInPixels); } }
Example 4
Source Project: PlusDemo File: DragHelperGridView.java License: Apache License 2.0 | 5 votes |
@Override public void onViewDragStateChanged(int state) { if (state == ViewDragHelper.STATE_IDLE) { View capturedView = dragHelper.getCapturedView(); if (capturedView != null) { capturedView.setElevation(capturedView.getElevation() - 1); } } }
Example 5
Source Project: RecyclerBanner File: OverFlyingLayoutManager.java License: Apache License 2.0 | 5 votes |
protected void setItemViewProperty(View itemView, float targetOffset) { float scale = calculateScale(targetOffset + mSpaceMain); itemView.setScaleX(scale); itemView.setScaleY(scale); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { itemView.setElevation(0); } final float rotation = calRotation(targetOffset); if (getOrientation() == HORIZONTAL) { itemView.setRotationY(rotation); } else { itemView.setRotationX(-rotation); } }
Example 6
Source Project: litho File: DynamicPropsManager.java License: Apache License 2.0 | 5 votes |
private void bindCommonDynamicProp(int key, DynamicValue<?> value, View target) { switch (key) { case KEY_ALPHA: target.setAlpha(DynamicPropsManager.<Float>resolve(value)); break; case KEY_TRANSLATION_X: target.setTranslationX(DynamicPropsManager.<Float>resolve(value)); break; case KEY_TRANSLATION_Y: target.setTranslationY(DynamicPropsManager.<Float>resolve(value)); break; case KEY_SCALE_X: target.setScaleX(DynamicPropsManager.<Float>resolve(value)); break; case KEY_SCALE_Y: target.setScaleY(DynamicPropsManager.<Float>resolve(value)); break; case KEY_ELEVATION: if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { target.setElevation(DynamicPropsManager.<Float>resolve(value)); } break; case KEY_BACKGROUND_COLOR: target.setBackgroundColor(DynamicPropsManager.<Integer>resolve(value)); break; case KEY_ROTATION: target.setRotation(DynamicPropsManager.<Float>resolve(value)); break; } }
Example 7
Source Project: material-navigation-drawer File: Utils.java License: Apache License 2.0 | 5 votes |
/** * Sets the base elevation of this view, in pixels. */ @TargetApi(21) public static void setElevation(View view, float elevation) { if (Build.VERSION.SDK_INT >= 21) { view.setElevation(elevation); } }
Example 8
Source Project: LaunchEnr File: PopupContainerWithArrow.java License: GNU General Public License v3.0 | 5 votes |
/** * Adds an arrow view pointing at the original icon. * @param horizontalOffset the horizontal offset of the arrow, so that it * points at the center of the original icon */ private View addArrowView(int horizontalOffset, int verticalOffset, int width, int height) { LayoutParams layoutParams = new LayoutParams(width, height); if (mIsLeftAligned) { layoutParams.gravity = Gravity.START; layoutParams.leftMargin = horizontalOffset; } else { layoutParams.gravity = Gravity.END; layoutParams.rightMargin = horizontalOffset; } if (mIsAboveIcon) { layoutParams.topMargin = verticalOffset; } else { layoutParams.bottomMargin = verticalOffset; } View arrowView = new View(getContext()); if (Gravity.isVertical(((FrameLayout.LayoutParams) getLayoutParams()).gravity)) { // This is only true if there wasn't room for the container next to the icon, // so we centered it instead. In that case we don't want to show the arrow. arrowView.setVisibility(INVISIBLE); } else { ShapeDrawable arrowDrawable = new ShapeDrawable(TriangleShape.create( width, height, !mIsAboveIcon)); Paint arrowPaint = arrowDrawable.getPaint(); // Note that we have to use getChildAt() instead of getItemViewAt(), // since the latter expects the arrow which hasn't been added yet. PopupItemView itemAttachedToArrow = (PopupItemView) (getChildAt(mIsAboveIcon ? getChildCount() - 1 : 0)); arrowPaint.setColor(itemAttachedToArrow.getArrowColor(mIsAboveIcon)); // The corner path effect won't be reflected in the shadow, but shouldn't be noticeable. int radius = getResources().getDimensionPixelSize(R.dimen.popup_arrow_corner_radius); arrowPaint.setPathEffect(new CornerPathEffect(radius)); arrowView.setBackground(arrowDrawable); arrowView.setElevation(getElevation()); } addView(arrowView, mIsAboveIcon ? getChildCount() : 0, layoutParams); return arrowView; }
Example 9
Source Project: spline File: SaturationValuePicker.java License: Apache License 2.0 | 5 votes |
public SaturationValuePicker(Context context, AttributeSet attrs) { super(context, attrs); mColor = new Color(); setClipChildren(false); setClipToPadding(false); DisplayMetrics metrics = context.getResources().getDisplayMetrics(); mDensity = metrics.density; mSelectorRadius = SELECTOR_RADIUS_DP * mDensity; View v = new View(context); v.setLayoutParams(new LayoutParams( ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT )); // We want the selector to protrude as minimally as possible from the selection drawable and // we want to inset the gradients in the drawable so that the color under the selector's // midpoint always reflects the current color (thus the limits of the saturation-value // gradients have to be clamped at this inset. The inset value is thus the shorter side of // a 45 degree triangle (1 / root 2) with hypotnus equal to the radius of the selector. mInset = mSelectorRadius / (float) Math.sqrt(2); mSVDrawable = new SaturationValueDrawable(mInset); v.setBackground(mSVDrawable); addView(v); mSelectorParams = new LayoutParams( Math.round(mSelectorRadius * 2), Math.round(mSelectorRadius * 2) ); mSelector = new View(context); mSelector.setLayoutParams(mSelectorParams); mSelectorDrawable = (GradientDrawable) ContextCompat.getDrawable( context, R.drawable.drawable_selector); mSelector.setBackground(mSelectorDrawable); mSelector.setElevation(SELECTOR_ELEVATION_DP * mDensity); addView(mSelector); }
Example 10
Source Project: ToggleButtons File: ToggleGroupApi21.java License: MIT License | 5 votes |
@Override public void initialize(ToggleGroupDelegate groupView, Context context, ColorStateList backgroundColor, float radius, float elevation, float maxElevation) { final RoundRectDrawable background = new RoundRectDrawable(backgroundColor, radius); groupView.setGroupBackground(background); View view = groupView.getToggleGroup(); view.setClipToOutline(true); view.setElevation(elevation); setMaxElevation(groupView, maxElevation); }
Example 11
Source Project: spline File: HuePicker.java License: Apache License 2.0 | 4 votes |
public HuePicker(Context context, AttributeSet attrs) { super(context, attrs); mListeners = new ArrayList<OnHueChangeListener>(); setClipChildren(false); setClipToPadding(false); DisplayMetrics metrics = context.getResources().getDisplayMetrics(); mDensity = metrics.density; mSelectorRadius = SELECTOR_RADIUS_DP * mDensity; // We want the selector to protrude as minimally as possible from the background drawable // and we want to inset the gradients in the drawable so that the color under the // selector's midpoint always reflects the current color (thus the limits of the background // gradient have to be clamped at this inset. The inset value is thus the base side of a // triangle extending from the midpoint of the selector placed in the desired position, a // hypotenuse equal to the selector radius and a height side equal to half of the height of // the background drawable. float height = BACKGROUND_HEIGHT_DP * mDensity / 2.0f; mInset = Math.round( Math.sqrt(mSelectorRadius * mSelectorRadius - height * height) ); mSelectorParams = new LayoutParams( Math.round(mSelectorRadius * 2), Math.round(mSelectorRadius * 2) ); mBackground = new View(context); mBackground.setBackground(new HueDrawable()); addView(mBackground); mSelector = new View(getContext()); mSelector.setLayoutParams(mSelectorParams); mSelectorDrawable = (GradientDrawable) ContextCompat.getDrawable( getContext(), R.drawable.drawable_selector); mSelector.setBackground(mSelectorDrawable); mSelector.setElevation(SELECTOR_ELEVATION_DP * mDensity); addView(mSelector); // Full saturation / full value color used for the selector background mHueColor = new Color(0xffff0000); updateSelectorColor(); }
Example 12
Source Project: Gloading File: Gloading.java License: Apache License 2.0 | 4 votes |
/** * Show specific status UI * @param status status * @see #showLoading() * @see #showLoadFailed() * @see #showLoadSuccess() * @see #showEmpty() */ public void showLoadingStatus(int status) { if (curState == status || !validate()) { return; } curState = status; //first try to reuse status view View convertView = mStatusViews.get(status); if (convertView == null) { //secondly try to reuse current status view convertView = mCurStatusView; } try { //call customer adapter to get UI for specific status. convertView can be reused View view = mAdapter.getView(this, convertView, status); if (view == null) { printLog(mAdapter.getClass().getName() + ".getView returns null"); return; } if (view != mCurStatusView || mWrapper.indexOfChild(view) < 0) { if (mCurStatusView != null) { mWrapper.removeView(mCurStatusView); } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { view.setElevation(Float.MAX_VALUE); } mWrapper.addView(view); ViewGroup.LayoutParams lp = view.getLayoutParams(); if (lp != null) { lp.width = ViewGroup.LayoutParams.MATCH_PARENT; lp.height = ViewGroup.LayoutParams.MATCH_PARENT; } } else if (mWrapper.indexOfChild(view) != mWrapper.getChildCount() - 1) { // make sure loading status view at the front view.bringToFront(); } mCurStatusView = view; mStatusViews.put(status, view); } catch(Exception e) { if (DEBUG) { e.printStackTrace(); } } }
Example 13
Source Project: YCStateLayout File: StateViewLayout.java License: Apache License 2.0 | 4 votes |
/** * Show specific status UI * @param status status * @see #showLoading() * @see #showLoadFailed() * @see #showLoadSuccess() * @see #showEmpty() */ public void showLoadingStatus(int status) { if (curState == status || !validate()) { return; } curState = status; //first try to reuse status view View convertView = mStatusViews.get(status); if (convertView == null) { //secondly try to reuse current status view convertView = mCurStatusView; } try { //call customer adapter to get UI for specific status. convertView can be reused View view = mAdapter.getView(this, convertView, status); if (view == null) { printLog(mAdapter.getClass().getName() + ".getView returns null"); return; } if (view != mCurStatusView || mWrapper.indexOfChild(view) < 0) { if (mCurStatusView != null) { mWrapper.removeView(mCurStatusView); } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { view.setElevation(Float.MAX_VALUE); } mWrapper.addView(view); ViewGroup.LayoutParams lp = view.getLayoutParams(); if (lp != null) { lp.width = ViewGroup.LayoutParams.MATCH_PARENT; lp.height = ViewGroup.LayoutParams.MATCH_PARENT; } } else if (mWrapper.indexOfChild(view) != mWrapper.getChildCount() - 1) { // 确保加载状态视图在前面 view.bringToFront(); } mCurStatusView = view; mStatusViews.put(status, view); } catch(Exception e) { if (DEBUG) { e.printStackTrace(); } } }
Example 14
Source Project: Phonograph File: PlaylistAdapter.java License: GNU General Public License v3.0 | 4 votes |
public ViewHolder(@NonNull View itemView, int itemViewType) { super(itemView); if (itemViewType == SMART_PLAYLIST) { if (shortSeparator != null) { shortSeparator.setVisibility(View.GONE); } itemView.setBackgroundColor(ATHUtil.resolveColor(activity, R.attr.cardBackgroundColor)); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { itemView.setElevation(activity.getResources().getDimensionPixelSize(R.dimen.card_elevation)); } } if (image != null) { int iconPadding = activity.getResources().getDimensionPixelSize(R.dimen.list_item_image_icon_padding); image.setPadding(iconPadding, iconPadding, iconPadding, iconPadding); image.setColorFilter(ATHUtil.resolveColor(activity, R.attr.iconColor), PorterDuff.Mode.SRC_IN); } if (menu != null) { menu.setOnClickListener(view -> { final Playlist playlist = dataSet.get(getAdapterPosition()); final PopupMenu popupMenu = new PopupMenu(activity, view); popupMenu.inflate(getItemViewType() == SMART_PLAYLIST ? R.menu.menu_item_smart_playlist : R.menu.menu_item_playlist); if (playlist instanceof LastAddedPlaylist) { popupMenu.getMenu().findItem(R.id.action_clear_playlist).setVisible(false); } popupMenu.setOnMenuItemClickListener(item -> { if (item.getItemId() == R.id.action_clear_playlist) { if (playlist instanceof AbsSmartPlaylist) { ClearSmartPlaylistDialog.create((AbsSmartPlaylist) playlist).show(activity.getSupportFragmentManager(), "CLEAR_SMART_PLAYLIST_" + playlist.name); return true; } } return PlaylistMenuHelper.handleMenuClick( activity, dataSet.get(getAdapterPosition()), item); }); popupMenu.show(); }); } }
Example 15
Source Project: PlusDemo File: DragHelperGridView.java License: Apache License 2.0 | 4 votes |
@Override public void onViewCaptured(@NonNull View capturedChild, int activePointerId) { capturedChild.setElevation(getElevation() + 1); capturedLeft = capturedChild.getLeft(); capturedTop = capturedChild.getTop(); }
Example 16
Source Project: DanDanPlayForAndroid File: LayoutHelper.java License: MIT License | 4 votes |
@Override public void setRadiusAndShadow(int radius, @ILayout.HideRadiusSide int hideRadiusSide, int shadowElevation, float shadowAlpha) { View owner = mOwner.get(); if (owner == null) { return; } mRadius = radius; mHideRadiusSide = hideRadiusSide; if (mRadius > 0) { if (hideRadiusSide == HIDE_RADIUS_SIDE_TOP) { mRadiusArray = new float[]{0, 0, 0, 0, mRadius, mRadius, mRadius, mRadius}; } else if (hideRadiusSide == HIDE_RADIUS_SIDE_RIGHT) { mRadiusArray = new float[]{mRadius, mRadius, 0, 0, 0, 0, mRadius, mRadius}; } else if (hideRadiusSide == HIDE_RADIUS_SIDE_BOTTOM) { mRadiusArray = new float[]{mRadius, mRadius, mRadius, mRadius, 0, 0, 0, 0}; } else if (hideRadiusSide == HIDE_RADIUS_SIDE_LEFT) { mRadiusArray = new float[]{0, 0, mRadius, mRadius, mRadius, mRadius, 0, 0}; } else { mRadiusArray = null; } } mShadowElevation = shadowElevation; mShadowAlpha = shadowAlpha; if (useFeature()) { if (mShadowElevation == 0 || isRadiusWithSideHidden()) { owner.setElevation(0); } else { owner.setElevation(mShadowElevation); } owner.setOutlineProvider(new ViewOutlineProvider() { @Override @TargetApi(21) public void getOutline(View view, Outline outline) { int w = view.getWidth(), h = view.getHeight(); if (w == 0 || h == 0) { return; } if (isRadiusWithSideHidden()) { int left = 0, top = 0, right = w, bottom = h; if (mHideRadiusSide == HIDE_RADIUS_SIDE_LEFT) { left -= mRadius; } else if (mHideRadiusSide == HIDE_RADIUS_SIDE_TOP) { top -= mRadius; } else if (mHideRadiusSide == HIDE_RADIUS_SIDE_RIGHT) { right += mRadius; } else if (mHideRadiusSide == HIDE_RADIUS_SIDE_BOTTOM) { bottom += mRadius; } outline.setRoundRect(left, top, right, bottom, mRadius); return; } int top = mOutlineInsetTop, bottom = Math.max(top + 1, h - mOutlineInsetBottom), left = mOutlineInsetLeft, right = w - mOutlineInsetRight; if (mIsOutlineExcludePadding) { left += view.getPaddingLeft(); top += view.getPaddingTop(); right = Math.max(left + 1, right - view.getPaddingRight()); bottom = Math.max(top + 1, bottom - view.getPaddingBottom()); } outline.setAlpha(mShadowAlpha); if (mRadius <= 0) { outline.setRect(left, top, right, bottom); } else { outline.setRoundRect(left, top, right, bottom, mRadius); } } }); owner.setClipToOutline(mRadius > 0); } owner.invalidate(); }
Example 17
Source Project: Bounce File: Utils.java License: Apache License 2.0 | 4 votes |
public static void setElevation(View view, float elevation) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) view.setElevation(elevation); }
Example 18
Source Project: VinylMusicPlayer File: SearchAdapter.java License: GNU General Public License v3.0 | 4 votes |
public ViewHolder(@NonNull View itemView, int itemViewType) { super(itemView); itemView.setOnLongClickListener(null); if (itemViewType != HEADER) { itemView.setBackgroundColor(ATHUtil.resolveColor(activity, R.attr.cardBackgroundColor)); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { itemView.setElevation(activity.getResources().getDimensionPixelSize(R.dimen.card_elevation)); } if (shortSeparator != null) { shortSeparator.setVisibility(View.GONE); } } if (menu != null) { if (itemViewType == SONG) { menu.setVisibility(View.VISIBLE); menu.setOnClickListener(new SongMenuHelper.OnClickSongMenu(activity) { @Override public Song getSong() { return (Song) dataSet.get(getAdapterPosition()); } }); } else { menu.setVisibility(View.GONE); } } switch (itemViewType) { case ALBUM: setImageTransitionName(activity.getString(R.string.transition_album_art)); break; case ARTIST: setImageTransitionName(activity.getString(R.string.transition_artist_image)); break; case SONG: break; default: View container = itemView.findViewById(R.id.image_container); if (container != null) { container.setVisibility(View.GONE); } break; } }
Example 19
Source Project: Orin File: PlaylistAdapter.java License: GNU General Public License v3.0 | 4 votes |
public ViewHolder(@NonNull View itemView, int itemViewType) { super(itemView); if (itemViewType == SMART_PLAYLIST) { if (shortSeparator != null) { shortSeparator.setVisibility(View.GONE); } itemView.setBackgroundColor(ATHUtil.resolveColor(activity, R.attr.cardBackgroundColor)); if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { itemView.setElevation(activity.getResources().getDimensionPixelSize(R.dimen.card_elevation)); } } if (image != null) { int iconPadding = activity.getResources().getDimensionPixelSize(R.dimen.list_item_image_icon_padding); image.setPadding(iconPadding, iconPadding, iconPadding, iconPadding); image.setColorFilter(ATHUtil.resolveColor(activity, R.attr.iconColor), PorterDuff.Mode.SRC_IN); } if (menu != null) { menu.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { final Playlist playlist = dataSet.get(getAdapterPosition()); final PopupMenu popupMenu = new PopupMenu(activity, view); popupMenu.inflate(getItemViewType() == SMART_PLAYLIST ? R.menu.menu_item_smart_playlist : R.menu.menu_item_playlist); if (playlist instanceof LastAddedPlaylist) { popupMenu.getMenu().findItem(R.id.action_clear_playlist).setVisible(false); } popupMenu.setOnMenuItemClickListener(new PopupMenu.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(@NonNull MenuItem item) { if (item.getItemId() == R.id.action_clear_playlist) { if (playlist instanceof AbsSmartPlaylist) { ClearSmartPlaylistDialog.create((AbsSmartPlaylist) playlist).show(activity.getSupportFragmentManager(), "CLEAR_SMART_PLAYLIST_" + playlist.name); return true; } } return PlaylistMenuHelper.handleMenuClick( activity, dataSet.get(getAdapterPosition()), item); } }); popupMenu.show(); } }); } }
Example 20
Source Project: kolabnotes-android File: Utils.java License: GNU Lesser General Public License v3.0 | 4 votes |
public static void setElevation(View view, float elevation){ if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP){ view.setElevation(elevation); } }