Java Code Examples for android.view.View#getVisibility()
The following examples show how to use
android.view.View#getVisibility() .
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 File: EmptyTextProgressView.java From TelePlus-Android with GNU General Public License v2.0 | 6 votes |
@Override protected void onLayout(boolean changed, int l, int t, int r, int b) { inLayout = true; int width = r - l; int height = b - t; int childCount = getChildCount(); for (int i = 0; i < childCount; i++) { View child = getChildAt(i); if (child.getVisibility() == GONE) { continue; } int x = (width - child.getMeasuredWidth()) / 2; int y; if (showAtCenter) { y = (height / 2 - child.getMeasuredHeight()) / 2; } else { y = (height - child.getMeasuredHeight()) / 2; } child.layout(x, y, x + child.getMeasuredWidth(), y + child.getMeasuredHeight()); } inLayout = false; }
Example 2
Source File: StatusBarUtil.java From styT with Apache License 2.0 | 6 votes |
/** * 设置状态栏颜色 * * @param activity 需要设置的activity * @param color 状态栏颜色值 * @param statusBarAlpha 状态栏透明度 */ public static void setColor(Activity activity, @ColorInt int color, @IntRange(from = 0, to = 255) int statusBarAlpha) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_DRAWS_SYSTEM_BAR_BACKGROUNDS); activity.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); activity.getWindow().setStatusBarColor(calculateStatusColor(color, statusBarAlpha)); } else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); ViewGroup decorView = (ViewGroup) activity.getWindow().getDecorView(); View fakeStatusBarView = decorView.findViewById(FAKE_STATUS_BAR_VIEW_ID); if (fakeStatusBarView != null) { if (fakeStatusBarView.getVisibility() == View.GONE) { fakeStatusBarView.setVisibility(View.VISIBLE); } fakeStatusBarView.setBackgroundColor(calculateStatusColor(color, statusBarAlpha)); } else { decorView.addView(createStatusBarView(activity, color, statusBarAlpha)); } setRootView(activity); } }
Example 3
Source File: XStatusBar.java From XFrame with Apache License 2.0 | 6 votes |
/** * 为DrawerLayout 布局设置状态栏变色(5.0以下无半透明效果,不建议使用) * * @param activity 需要设置的activity * @param drawerLayout DrawerLayout * @param color 状态栏颜色值 */ @Deprecated public static void setColorForDrawerLayoutDiff(Activity activity, DrawerLayout drawerLayout, @ColorInt int color) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS); // 生成一个状态栏大小的矩形 ViewGroup contentLayout = (ViewGroup) drawerLayout.getChildAt(0); View fakeStatusBarView = contentLayout.findViewById(FAKE_STATUS_BAR_VIEW_ID); if (fakeStatusBarView != null) { if (fakeStatusBarView.getVisibility() == View.GONE) { fakeStatusBarView.setVisibility(View.VISIBLE); } fakeStatusBarView.setBackgroundColor(calculateStatusColor(color, DEFAULT_STATUS_BAR_ALPHA)); } else { // 添加 statusBarView 到布局中 contentLayout.addView(createStatusBarView(activity, color), 0); } // 内容布局不是 LinearLayout 时,设置padding top if (!(contentLayout instanceof LinearLayout) && contentLayout.getChildAt(1) != null) { contentLayout.getChildAt(1).setPadding(0, getStatusBarHeight(activity), 0, 0); } // 设置属性 setDrawerLayoutProperty(drawerLayout, contentLayout); } }
Example 4
Source File: Flip.java From Trebuchet with GNU General Public License v3.0 | 6 votes |
@Override public void screenScrolled(View v, float progress) { float rotation = -180.0f * Math.max(-1f, Math.min(1f, progress)); v.setCameraDistance(mPagedView.mDensity * CAMERA_DISTANCE); v.setPivotX(v.getMeasuredWidth() * 0.5f); v.setPivotY(v.getMeasuredHeight() * 0.5f); v.setRotationY(rotation); if (progress >= -0.5f && progress <= 0.5f) { v.setTranslationX(v.getMeasuredWidth() * progress); if (v.getVisibility() != View.VISIBLE) { v.setVisibility(View.VISIBLE); } } else { v.setTranslationX(v.getMeasuredWidth() * -10f); } }
Example 5
Source File: EmptyTextProgressView.java From Telegram with GNU General Public License v2.0 | 6 votes |
@Override protected void onLayout(boolean changed, int l, int t, int r, int b) { inLayout = true; int width = r - l; int height = b - t; int childCount = getChildCount(); for (int i = 0; i < childCount; i++) { View child = getChildAt(i); if (child.getVisibility() == GONE) { continue; } int x = (width - child.getMeasuredWidth()) / 2; int y; if (showAtPos == 2) { y = (AndroidUtilities.dp(100) - child.getMeasuredHeight()) / 2 + getPaddingTop(); } else if (showAtPos == 1) { y = (height / 2 - child.getMeasuredHeight()) / 2 + getPaddingTop(); } else { y = (height - child.getMeasuredHeight()) / 2 + getPaddingTop(); } child.layout(x, y, x + child.getMeasuredWidth(), y + child.getMeasuredHeight()); } inLayout = false; }
Example 6
Source File: OrientedViewPager.java From FlippableStackView with Apache License 2.0 | 6 votes |
/** * We only want the current page that is being shown to be touchable. */ @Override public void addTouchables(ArrayList<View> views) { // Note that we don't call super.addTouchables(), which means that // we don't call View.addTouchables(). This is okay because a ViewPager // is itself not touchable. for (int i = 0; i < getChildCount(); i++) { final View child = getChildAt(i); if (child.getVisibility() == VISIBLE) { ItemInfo ii = infoForChild(child); if (ii != null && ii.position == mCurItem) { child.addTouchables(views); } } } }
Example 7
Source File: LinearLayout.java From android_9.0.0_r45 with Apache License 2.0 | 6 votes |
private void forceUniformWidth(int count, int heightMeasureSpec) { // Pretend that the linear layout has an exact size. int uniformMeasureSpec = MeasureSpec.makeMeasureSpec(getMeasuredWidth(), MeasureSpec.EXACTLY); for (int i = 0; i< count; ++i) { final View child = getVirtualChildAt(i); if (child != null && child.getVisibility() != GONE) { LinearLayout.LayoutParams lp = ((LinearLayout.LayoutParams)child.getLayoutParams()); if (lp.width == LayoutParams.MATCH_PARENT) { // Temporarily force children to reuse their old measured height // FIXME: this may not be right for something like wrapping text? int oldHeight = lp.height; lp.height = child.getMeasuredHeight(); // Remeasue with new dimensions measureChildWithMargins(child, uniformMeasureSpec, 0, heightMeasureSpec, 0); lp.height = oldHeight; } } } }
Example 8
Source File: PercentFrameLayout.java From restcomm-android-sdk with GNU Affero General Public License v3.0 | 6 votes |
@Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { final int width = getDefaultSize(Integer.MAX_VALUE, widthMeasureSpec); final int height = getDefaultSize(Integer.MAX_VALUE, heightMeasureSpec); setMeasuredDimension( MeasureSpec.makeMeasureSpec(width, MeasureSpec.EXACTLY), MeasureSpec.makeMeasureSpec(height, MeasureSpec.EXACTLY)); final int childWidthMeasureSpec = MeasureSpec.makeMeasureSpec(width * widthPercent / 100, MeasureSpec.AT_MOST); final int childHeightMeasureSpec = MeasureSpec.makeMeasureSpec(height * heightPercent / 100, MeasureSpec.AT_MOST); for (int i = 0; i < getChildCount(); ++i) { final View child = getChildAt(i); if (child.getVisibility() != GONE) { child.measure(childWidthMeasureSpec, childHeightMeasureSpec); } } }
Example 9
Source File: RegisterActivity.java From Expert-Android-Programming with MIT License | 5 votes |
private void showHint(View view) { view.setPivotX(0); view.setPivotY(view.getHeight()); if (view.getVisibility() == View.INVISIBLE) { view.setVisibility(View.VISIBLE); Animator iconAnim = ObjectAnimator.ofPropertyValuesHolder(view, PropertyValuesHolder.ofFloat(View.ALPHA, 0f, 1f), PropertyValuesHolder.ofFloat(View.SCALE_Y, 0f, 1f)); iconAnim.start(); } }
Example 10
Source File: FloatLabel.java From AndroidFloatLabel with Apache License 2.0 | 5 votes |
@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR1) private void layoutChild(View child, int parentLeft, int parentTop, int parentRight, int parentBottom) { if (child.getVisibility() != GONE) { final LayoutParams lp = (LayoutParams) child.getLayoutParams(); final int width = child.getMeasuredWidth(); final int height = child.getMeasuredHeight(); int childLeft; final int childTop = parentTop + lp.topMargin; int gravity = lp.gravity; if (gravity == -1) { gravity = Gravity.TOP | Gravity.START; } final int layoutDirection; if (Build.VERSION.SDK_INT < Build.VERSION_CODES.JELLY_BEAN_MR1) { layoutDirection = LAYOUT_DIRECTION_LTR; } else { layoutDirection = getLayoutDirection(); } final int absoluteGravity = Gravity.getAbsoluteGravity(gravity, layoutDirection); switch (absoluteGravity & Gravity.HORIZONTAL_GRAVITY_MASK) { case Gravity.CENTER_HORIZONTAL: childLeft = parentLeft + (parentRight - parentLeft - width) / 2 + lp.leftMargin - lp.rightMargin; break; case Gravity.END: childLeft = parentRight - width - lp.rightMargin; break; case Gravity.START: default: childLeft = parentLeft + lp.leftMargin; } child.layout(childLeft, childTop, childLeft + width, childTop + height); } }
Example 11
Source File: SlidingPaneLayout.java From V.FlyoutTest with MIT License | 5 votes |
@Override public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfoCompat info) { final AccessibilityNodeInfoCompat superNode = AccessibilityNodeInfoCompat.obtain(info); super.onInitializeAccessibilityNodeInfo(host, superNode); copyNodeInfoNoChildren(info, superNode); superNode.recycle(); info.setClassName(SlidingPaneLayout.class.getName()); info.setSource(host); final ViewParent parent = ViewCompat.getParentForAccessibility(host); if (parent instanceof View) { info.setParent((View) parent); } // This is a best-approximation of addChildrenForAccessibility() // that accounts for filtering. final int childCount = getChildCount(); for (int i = 0; i < childCount; i++) { final View child = getChildAt(i); if (!filter(child) && (child.getVisibility() == View.VISIBLE)) { // Force importance to "yes" since we can't read the value. ViewCompat.setImportantForAccessibility( child, ViewCompat.IMPORTANT_FOR_ACCESSIBILITY_YES); info.addChild(child); } } }
Example 12
Source File: ActionBarMenuItem.java From Telegram-FOSS with GNU General Public License v2.0 | 5 votes |
public void showSubItem(int id) { if (popupLayout == null) { return; } View view = popupLayout.findViewWithTag(id); if (view != null && view.getVisibility() != VISIBLE) { view.setVisibility(VISIBLE); measurePopup = true; } }
Example 13
Source File: ViewUtil.java From star-zone-android with Apache License 2.0 | 5 votes |
public static void setViewsVisible(int visible, View... views) { for (View view : views) { if (view.getVisibility() != visible) { view.setVisibility(visible); } } }
Example 14
Source File: AdapterView.java From Klyph with MIT License | 5 votes |
@Override public boolean dispatchPopulateAccessibilityEvent( AccessibilityEvent event ) { View selectedView = getSelectedView(); if ( selectedView != null && selectedView.getVisibility() == VISIBLE && selectedView.dispatchPopulateAccessibilityEvent( event ) ) { return true; } return false; }
Example 15
Source File: ItemTouchHelperExtension.java From CrazyDaily with Apache License 2.0 | 5 votes |
private boolean isInBoundsClickable(int x, int y, View child) { int[] location = new int[2]; child.getLocationOnScreen(location); Rect rect = new Rect(location[0], location[1], location[0] + child.getWidth(), location[1] + child.getHeight()); if (rect.contains(x, y) && ViewCompat.hasOnClickListeners(child) && child.getVisibility() == View.VISIBLE) { return true; } return false; }
Example 16
Source File: SlidingUpPanelLayout.java From AndroidSlidingUpPanel-foursquare-map-demo with Apache License 2.0 | 4 votes |
@Override protected void onLayout(boolean changed, int l, int t, int r, int b) { final int paddingLeft = getPaddingLeft(); final int paddingTop = getPaddingTop(); final int slidingTop = getSlidingTop(); final int childCount = getChildCount(); if (mFirstLayout) { switch (mSlideState) { case EXPANDED: mSlideOffset = mCanSlide ? 0.f : 1.f; break; case ANCHORED: mSlideOffset = mCanSlide ? mAnchorPoint : 1.f; break; default: mSlideOffset = 1.f; break; } } for (int i = 0; i < childCount; i++) { final View child = getChildAt(i); if (child.getVisibility() == GONE) { continue; } final LayoutParams lp = (LayoutParams) child.getLayoutParams(); final int childHeight = child.getMeasuredHeight(); if (lp.slideable) { mSlideRange = childHeight - (mPanelHeight + mScrollableViewTopPadding); } int childTop; if (mIsSlidingUp) { childTop = lp.slideable ? slidingTop + (int) (mSlideRange * mSlideOffset) : paddingTop; } else { childTop = lp.slideable ? slidingTop - (int) (mSlideRange * mSlideOffset) : paddingTop; } final int childBottom = childTop + childHeight; final int childLeft = paddingLeft; final int childRight = childLeft + child.getMeasuredWidth(); child.layout(childLeft, childTop, childRight, childBottom); } if (mFirstLayout) { updateObscuredViewVisibility(); } mFirstLayout = false; }
Example 17
Source File: ViewUtils.java From Qiitanium with MIT License | 4 votes |
public static boolean isVisible(View v) { return (v.getVisibility() == View.VISIBLE); }
Example 18
Source File: SlidingPaneLayout.java From KlyphMessenger with MIT License | 4 votes |
@Override protected void onLayout(boolean changed, int l, int t, int r, int b) { final int width = r - l; final int paddingLeft = getPaddingLeft(); final int paddingRight = getPaddingRight(); final int paddingTop = getPaddingTop(); final int childCount = getChildCount(); int xStart = paddingLeft; int nextXStart = xStart; if (mFirstLayout) { mSlideOffset = mCanSlide && mPreservedOpenState ? 1.f : 0.f; } for (int i = 0; i < childCount; i++) { final View child = getChildAt(i); if (child.getVisibility() == GONE) { continue; } final LayoutParams lp = (LayoutParams) child.getLayoutParams(); final int childWidth = child.getMeasuredWidth(); int offset = 0; if (lp.slideable) { final int margin = lp.leftMargin + lp.rightMargin; final int range = Math.min(nextXStart, width - paddingRight - mOverhangSize) - xStart - margin; mSlideRange = range; lp.dimWhenOffset = true;//xStart + lp.leftMargin + range + childWidth / 2 > //width - paddingRight; xStart += (int) (range * mSlideOffset) + lp.leftMargin; } else if (mCanSlide && mParallaxBy != 0) { offset = (int) ((1 - mSlideOffset) * mParallaxBy); xStart = nextXStart; } else { xStart = nextXStart; } final int childLeft = xStart - offset; final int childRight = childLeft + childWidth; final int childTop = paddingTop; final int childBottom = childTop + child.getMeasuredHeight(); child.layout(childLeft, paddingTop, childRight, childBottom); nextXStart += child.getWidth(); } if (mFirstLayout) { if (mCanSlide) { if (mParallaxBy != 0) { parallaxOtherViews(mSlideOffset); } if (((LayoutParams) mSlideableView.getLayoutParams()).dimWhenOffset) { dimChildView(mSlideableView, mSlideOffset, mSliderFadeColor); } } else { // Reset the dim level of all children; it's irrelevant when nothing moves. for (int i = 0; i < childCount; i++) { dimChildView(getChildAt(i), 0, mSliderFadeColor); } } updateObscuredViewsVisibility(mSlideableView); } mFirstLayout = false; }
Example 19
Source File: Stack.java From Trebuchet with GNU General Public License v3.0 | 4 votes |
@Override public void screenScrolled(View v, float progress) { final boolean isRtl = mPagedView.isLayoutRtl(); float interpolatedProgress; float translationX; float maxScrollProgress = Math.max(0, progress); float minScrollProgress = Math.min(0, progress); if (mPagedView.isLayoutRtl()) { translationX = maxScrollProgress * v.getMeasuredWidth(); interpolatedProgress = mZInterpolator.getInterpolation(Math.abs(maxScrollProgress)); } else { translationX = minScrollProgress * v.getMeasuredWidth(); interpolatedProgress = mZInterpolator.getInterpolation(Math.abs(minScrollProgress)); } float scale = (1 - interpolatedProgress) + interpolatedProgress * TRANSITION_SCALE_FACTOR; float alpha; if (isRtl && (progress > 0)) { alpha = mAlphaInterpolator.getInterpolation(1 - Math.abs(maxScrollProgress)); } else if (!isRtl && (progress < 0)) { alpha = mAlphaInterpolator.getInterpolation(1 - Math.abs(progress)); } else { // On large screens we need to fade the page as it nears its leftmost position alpha = mLeftScreenAlphaInterpolator.getInterpolation(1 - progress); } v.setTranslationX(translationX); v.setScaleX(scale); v.setScaleY(scale); if (v instanceof CellLayout) { ((CellLayout) v).getShortcutsAndWidgets().setAlpha(alpha); } else { v.setAlpha(alpha); } // If the view has 0 alpha, we move it off screen so as to prevent // it from accepting touches if (alpha == 0) { v.setTranslationX(v.getMeasuredWidth() * -10f); } else if (v.getVisibility() != View.VISIBLE) { v.setVisibility(View.VISIBLE); } }
Example 20
Source File: SlidingUpPanelLayout.java From AndroidSlidingUpPanel with Apache License 2.0 | 4 votes |
@Override protected void onLayout(boolean changed, int l, int t, int r, int b) { final int paddingLeft = getPaddingLeft(); final int paddingTop = getPaddingTop(); final int childCount = getChildCount(); if (mFirstLayout) { switch (mSlideState) { case EXPANDED: mSlideOffset = mMaxSlideOffset; break; case ANCHORED: mSlideOffset = mAnchorPoint; break; case HIDDEN: int newTop = computePanelTopPosition(0.0f) + (mIsSlidingUp ? +mPanelHeight : -mPanelHeight); mSlideOffset = computeSlideOffset(newTop); break; default: mSlideOffset = 0.f; break; } } for (int i = 0; i < childCount; i++) { final View child = getChildAt(i); final LayoutParams lp = (LayoutParams) child.getLayoutParams(); // Always layout the sliding view on the first layout if (child.getVisibility() == GONE && (i == 0 || mFirstLayout)) { continue; } final int childHeight = child.getMeasuredHeight(); int childTop = paddingTop; if (child == mSlideableView) { childTop = computePanelTopPosition(mSlideOffset); } if (!mIsSlidingUp) { if (child == mMainView && !mOverlayContent) { childTop = computePanelTopPosition(mSlideOffset) + mSlideableView.getMeasuredHeight(); } } final int childBottom = childTop + childHeight; final int childLeft = paddingLeft + lp.leftMargin; final int childRight = childLeft + child.getMeasuredWidth(); child.layout(childLeft, childTop, childRight, childBottom); } if (mFirstLayout) { updateObscuredViewVisibility(); } applyParallaxForCurrentSlideOffset(); mFirstLayout = false; }