当前位置: 首页>>代码示例>>Java>>正文


Java WindowInsets.replaceSystemWindowInsets方法代码示例

本文整理汇总了Java中android.view.WindowInsets.replaceSystemWindowInsets方法的典型用法代码示例。如果您正苦于以下问题:Java WindowInsets.replaceSystemWindowInsets方法的具体用法?Java WindowInsets.replaceSystemWindowInsets怎么用?Java WindowInsets.replaceSystemWindowInsets使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在android.view.WindowInsets的用法示例。


在下文中一共展示了WindowInsets.replaceSystemWindowInsets方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: onApplyWindowInsets

import android.view.WindowInsets; //导入方法依赖的package包/类
@Override
public WindowInsets onApplyWindowInsets(WindowInsets insets) {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
        mInsets[0] = insets.getSystemWindowInsetLeft();
        mInsets[1] = insets.getSystemWindowInsetTop();
        mInsets[2] = insets.getSystemWindowInsetRight();
        mInsets[3] = insets.getSystemWindowInsetBottom();

        post(new Runnable() {
            @Override
            public void run() {
                notifyListener();
            }
        });
        return super.onApplyWindowInsets(insets.replaceSystemWindowInsets(insets.getSystemWindowInsetLeft(), 0,
                insets.getSystemWindowInsetRight(), lockHeight ? 0 : insets.getSystemWindowInsetBottom()));
    } else {
        return super.onApplyWindowInsets(insets);
    }
}
 
开发者ID:angcyo,项目名称:RLibrary,代码行数:21,代码来源:UILayoutImpl.java

示例2: applyMarginInsets

import android.view.WindowInsets; //导入方法依赖的package包/类
public static void applyMarginInsets(ViewGroup.MarginLayoutParams paramMarginLayoutParams, Object paramObject, int paramInt)
{
  WindowInsets localWindowInsets = (WindowInsets)paramObject;
  if (paramInt == 3) {
    localWindowInsets = localWindowInsets.replaceSystemWindowInsets(localWindowInsets.getSystemWindowInsetLeft(), localWindowInsets.getSystemWindowInsetTop(), 0, localWindowInsets.getSystemWindowInsetBottom());
  }
  for (;;)
  {
    paramMarginLayoutParams.leftMargin = localWindowInsets.getSystemWindowInsetLeft();
    paramMarginLayoutParams.topMargin = localWindowInsets.getSystemWindowInsetTop();
    paramMarginLayoutParams.rightMargin = localWindowInsets.getSystemWindowInsetRight();
    paramMarginLayoutParams.bottomMargin = localWindowInsets.getSystemWindowInsetBottom();
    return;
    if (paramInt == 5) {
      localWindowInsets = localWindowInsets.replaceSystemWindowInsets(0, localWindowInsets.getSystemWindowInsetTop(), localWindowInsets.getSystemWindowInsetRight(), localWindowInsets.getSystemWindowInsetBottom());
    }
  }
}
 
开发者ID:ChiangC,项目名称:FMTech,代码行数:19,代码来源:DrawerLayoutCompatApi21.java

示例3: dispatchChildInsets

import android.view.WindowInsets; //导入方法依赖的package包/类
@SuppressLint("NewApi")
private void dispatchChildInsets(View child, Object insets, int drawerGravity) {
    WindowInsets wi = (WindowInsets) insets;
    if (drawerGravity == Gravity.LEFT) {
        wi = wi.replaceSystemWindowInsets(wi.getSystemWindowInsetLeft(), wi.getSystemWindowInsetTop(), 0, wi.getSystemWindowInsetBottom());
    } else if (drawerGravity == Gravity.RIGHT) {
        wi = wi.replaceSystemWindowInsets(0, wi.getSystemWindowInsetTop(), wi.getSystemWindowInsetRight(), wi.getSystemWindowInsetBottom());
    }
    child.dispatchApplyWindowInsets(wi);
}
 
开发者ID:MLNO,项目名称:airgram,代码行数:11,代码来源:DrawerLayoutContainer.java

示例4: applyMarginInsets

import android.view.WindowInsets; //导入方法依赖的package包/类
@SuppressLint("NewApi")
private void applyMarginInsets(MarginLayoutParams lp, Object insets, int drawerGravity, boolean topOnly) {
    WindowInsets wi = (WindowInsets) insets;
    if (drawerGravity == Gravity.LEFT) {
        wi = wi.replaceSystemWindowInsets(wi.getSystemWindowInsetLeft(), wi.getSystemWindowInsetTop(), 0, wi.getSystemWindowInsetBottom());
    } else if (drawerGravity == Gravity.RIGHT) {
        wi = wi.replaceSystemWindowInsets(0, wi.getSystemWindowInsetTop(), wi.getSystemWindowInsetRight(), wi.getSystemWindowInsetBottom());
    }
    lp.leftMargin = wi.getSystemWindowInsetLeft();
    lp.topMargin = topOnly ? 0 : wi.getSystemWindowInsetTop();
    lp.rightMargin = wi.getSystemWindowInsetRight();
    lp.bottomMargin = wi.getSystemWindowInsetBottom();
}
 
开发者ID:MLNO,项目名称:airgram,代码行数:14,代码来源:DrawerLayoutContainer.java

示例5: dispatchChildInsets

import android.view.WindowInsets; //导入方法依赖的package包/类
public static void dispatchChildInsets(View child, Object insets, int gravity) {
  WindowInsets wi = (WindowInsets) insets;
  if (gravity == Gravity.LEFT) {
    wi = wi.replaceSystemWindowInsets(wi.getSystemWindowInsetLeft(),
        wi.getSystemWindowInsetTop(), 0, wi.getSystemWindowInsetBottom());
  } else if (gravity == Gravity.RIGHT) {
    wi = wi.replaceSystemWindowInsets(0, wi.getSystemWindowInsetTop(),
        wi.getSystemWindowInsetRight(), wi.getSystemWindowInsetBottom());
  }
  child.dispatchApplyWindowInsets(wi);
}
 
开发者ID:rogues-dev,项目名称:superglue,代码行数:12,代码来源:DrawerLayoutCompatApi21.java

示例6: applyMarginInsets

import android.view.WindowInsets; //导入方法依赖的package包/类
public static void applyMarginInsets(ViewGroup.MarginLayoutParams lp, Object insets,
    int gravity) {
  WindowInsets wi = (WindowInsets) insets;
  if (gravity == Gravity.LEFT) {
    wi = wi.replaceSystemWindowInsets(wi.getSystemWindowInsetLeft(),
        wi.getSystemWindowInsetTop(), 0, wi.getSystemWindowInsetBottom());
  } else if (gravity == Gravity.RIGHT) {
    wi = wi.replaceSystemWindowInsets(0, wi.getSystemWindowInsetTop(),
        wi.getSystemWindowInsetRight(), wi.getSystemWindowInsetBottom());
  }
  lp.leftMargin = wi.getSystemWindowInsetLeft();
  lp.topMargin = wi.getSystemWindowInsetTop();
  lp.rightMargin = wi.getSystemWindowInsetRight();
  lp.bottomMargin = wi.getSystemWindowInsetBottom();
}
 
开发者ID:rogues-dev,项目名称:superglue,代码行数:16,代码来源:DrawerLayoutCompatApi21.java

示例7: dispatchChildInsets

import android.view.WindowInsets; //导入方法依赖的package包/类
@SuppressLint("NewApi")
private void dispatchChildInsets(View child, Object insets, int drawerGravity) {
    WindowInsets wi = (WindowInsets) insets;
        if (drawerGravity == Gravity.LEFT) {
            wi = wi.replaceSystemWindowInsets(wi.getSystemWindowInsetLeft(), wi.getSystemWindowInsetTop(), 0, wi.getSystemWindowInsetBottom());
        } else if (drawerGravity == Gravity.RIGHT) {
            wi = wi.replaceSystemWindowInsets(0, wi.getSystemWindowInsetTop(), wi.getSystemWindowInsetRight(), wi.getSystemWindowInsetBottom());
        }
        child.dispatchApplyWindowInsets(wi);
    }
 
开发者ID:pooyafaroka,项目名称:PlusGram,代码行数:11,代码来源:DrawerLayoutContainer.java

示例8: applyMarginInsets

import android.view.WindowInsets; //导入方法依赖的package包/类
@SuppressLint("NewApi")
private void applyMarginInsets(MarginLayoutParams lp, Object insets, int drawerGravity, boolean topOnly) {
    WindowInsets wi = (WindowInsets) insets;
        if (drawerGravity == Gravity.LEFT) {
            wi = wi.replaceSystemWindowInsets(wi.getSystemWindowInsetLeft(), wi.getSystemWindowInsetTop(), 0, wi.getSystemWindowInsetBottom());
        } else if (drawerGravity == Gravity.RIGHT) {
            wi = wi.replaceSystemWindowInsets(0, wi.getSystemWindowInsetTop(), wi.getSystemWindowInsetRight(), wi.getSystemWindowInsetBottom());
        }
        lp.leftMargin = wi.getSystemWindowInsetLeft();
        lp.topMargin = topOnly ? 0 : wi.getSystemWindowInsetTop();
        lp.rightMargin = wi.getSystemWindowInsetRight();
        lp.bottomMargin = wi.getSystemWindowInsetBottom();
    }
 
开发者ID:pooyafaroka,项目名称:PlusGram,代码行数:14,代码来源:DrawerLayoutContainer.java

示例9: dispatchChildInsets

import android.view.WindowInsets; //导入方法依赖的package包/类
public static void dispatchChildInsets(View child, Object insets, int gravity) {
    WindowInsets wi = (WindowInsets) insets;
    if (gravity == 3) {
        wi = wi.replaceSystemWindowInsets(wi.getSystemWindowInsetLeft(), wi.getSystemWindowInsetTop(), 0, wi.getSystemWindowInsetBottom());
    } else if (gravity == 5) {
        wi = wi.replaceSystemWindowInsets(0, wi.getSystemWindowInsetTop(), wi.getSystemWindowInsetRight(), wi.getSystemWindowInsetBottom());
    }
    child.dispatchApplyWindowInsets(wi);
}
 
开发者ID:JackChan1999,项目名称:boohee_v5.6,代码行数:10,代码来源:DrawerLayoutCompatApi21.java

示例10: applyMarginInsets

import android.view.WindowInsets; //导入方法依赖的package包/类
public static void applyMarginInsets(MarginLayoutParams lp, Object insets, int gravity) {
    WindowInsets wi = (WindowInsets) insets;
    if (gravity == 3) {
        wi = wi.replaceSystemWindowInsets(wi.getSystemWindowInsetLeft(), wi.getSystemWindowInsetTop(), 0, wi.getSystemWindowInsetBottom());
    } else if (gravity == 5) {
        wi = wi.replaceSystemWindowInsets(0, wi.getSystemWindowInsetTop(), wi.getSystemWindowInsetRight(), wi.getSystemWindowInsetBottom());
    }
    lp.leftMargin = wi.getSystemWindowInsetLeft();
    lp.topMargin = wi.getSystemWindowInsetTop();
    lp.rightMargin = wi.getSystemWindowInsetRight();
    lp.bottomMargin = wi.getSystemWindowInsetBottom();
}
 
开发者ID:JackChan1999,项目名称:boohee_v5.6,代码行数:13,代码来源:DrawerLayoutCompatApi21.java

示例11: onApplyWindowInsets

import android.view.WindowInsets; //导入方法依赖的package包/类
@Override
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
public WindowInsets onApplyWindowInsets(WindowInsets insets) {
    if (getFitsSystemWindows()) {
        mStatusBarInset = insets.getSystemWindowInsetTop();
        insets = insets.replaceSystemWindowInsets(
                insets.getSystemWindowInsetLeft(),
                0, /* top */
                insets.getSystemWindowInsetRight(),
                insets.getSystemWindowInsetBottom()
        );
    }
    return insets;
}
 
开发者ID:Trumeet,项目名称:SetupWizardLibCompat,代码行数:15,代码来源:StickyHeaderScrollView.java

示例12: onApplyWindowInsets

import android.view.WindowInsets; //导入方法依赖的package包/类
@Override
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
public WindowInsets onApplyWindowInsets(WindowInsets insets) {
    if (getFitsSystemWindows()) {
        mStatusBarInset = insets.getSystemWindowInsetTop();
        insets.replaceSystemWindowInsets(
                insets.getSystemWindowInsetLeft(),
                0, /* top */
                insets.getSystemWindowInsetRight(),
                insets.getSystemWindowInsetBottom()
        );
    }
    return insets;
}
 
开发者ID:Trumeet,项目名称:SetupWizardLibCompat,代码行数:15,代码来源:StickyHeaderListView.java

示例13: onApplyWindowInsets

import android.view.WindowInsets; //导入方法依赖的package包/类
@Override
public WindowInsets onApplyWindowInsets(View view, WindowInsets insets) {
    if (!mHasCalculatedBottomOffset) {
        mBottomOffset = getBottomDistance(view);
        mHasCalculatedBottomOffset = true;
    }

    int bottomInset = insets.getSystemWindowInsetBottom();

    final int bottomMargin = Math.max(
            insets.getSystemWindowInsetBottom() - mBottomOffset, 0);

    final ViewGroup.MarginLayoutParams lp =
            (ViewGroup.MarginLayoutParams) view.getLayoutParams();
    // Check that we have enough space to apply the bottom margins before applying it.
    // Otherwise the framework may think that the view is empty and exclude it from layout.
    if (bottomMargin < lp.bottomMargin + view.getHeight()) {
        lp.setMargins(lp.leftMargin, lp.topMargin, lp.rightMargin, bottomMargin);
        view.setLayoutParams(lp);
        bottomInset = 0;
    }


    return insets.replaceSystemWindowInsets(
            insets.getSystemWindowInsetLeft(),
            insets.getSystemWindowInsetTop(),
            insets.getSystemWindowInsetRight(),
            bottomInset
    );
}
 
开发者ID:Trumeet,项目名称:SetupWizardLibCompat,代码行数:31,代码来源:SystemBarHelper.java

示例14: onApplyWindowInsets

import android.view.WindowInsets; //导入方法依赖的package包/类
@Override
    public WindowInsets onApplyWindowInsets(WindowInsets insets) {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            mInsets[0] = insets.getSystemWindowInsetLeft();
            mInsets[1] = insets.getSystemWindowInsetTop();
            mInsets[2] = insets.getSystemWindowInsetRight();
            mInsets[3] = insets.getSystemWindowInsetBottom();

            if (isViewShow) {
                post(new Runnable() {
                    @Override
                    public void run() {
                        notifyListener();
                    }
                });
                return super.onApplyWindowInsets(insets.replaceSystemWindowInsets(insets.getSystemWindowInsetLeft(), 0,
                        insets.getSystemWindowInsetRight(), lockHeight || fixHeight ? 0 : insets.getSystemWindowInsetBottom()));
            } else {
                setPadding(getPaddingLeft(), 0, getPaddingRight(), 0);
//                return super.onApplyWindowInsets(insets.replaceSystemWindowInsets(insets.getSystemWindowInsetLeft(), 0,
//                        insets.getSystemWindowInsetRight(), lockHeight ? 0 : insets.getSystemWindowInsetBottom()));
                return insets.replaceSystemWindowInsets(insets.getSystemWindowInsetLeft(), 0,
                        insets.getSystemWindowInsetRight(), insets.getSystemWindowInsetBottom());
            }

        } else {
            return super.onApplyWindowInsets(insets);
        }
    }
 
开发者ID:angcyo,项目名称:RLibrary,代码行数:30,代码来源:SoftRelativeLayout.java

示例15: onApplyWindowInsets

import android.view.WindowInsets; //导入方法依赖的package包/类
@Override
public WindowInsets onApplyWindowInsets(WindowInsets insets) {
    if (getFitsSystemWindows()) {
        return super.onApplyWindowInsets(insets);
    } else {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            return insets.replaceSystemWindowInsets(0, 0, 0, 0);
        } else {
            return super.onApplyWindowInsets(insets);
        }
    }
}
 
开发者ID:angcyo,项目名称:RLibrary,代码行数:13,代码来源:RSoftInputLayout.java


注:本文中的android.view.WindowInsets.replaceSystemWindowInsets方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。