當前位置: 首頁>>代碼示例>>Java>>正文


Java ViewGroup.setClipToPadding方法代碼示例

本文整理匯總了Java中android.view.ViewGroup.setClipToPadding方法的典型用法代碼示例。如果您正苦於以下問題:Java ViewGroup.setClipToPadding方法的具體用法?Java ViewGroup.setClipToPadding怎麽用?Java ViewGroup.setClipToPadding使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在android.view.ViewGroup的用法示例。


在下文中一共展示了ViewGroup.setClipToPadding方法的12個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: setTransparentForDrawerLayout

import android.view.ViewGroup; //導入方法依賴的package包/類
/**
 * 為 DrawerLayout 布局設置狀態欄透明
 *
 * @param activity     需要設置的activity
 * @param drawerLayout DrawerLayout
 */
public static void setTransparentForDrawerLayout(Activity activity, DrawerLayout drawerLayout) {
    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.KITKAT) {
        return;
    }
    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(Color.TRANSPARENT);
    } else {
        activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
    }

    ViewGroup contentLayout = (ViewGroup) drawerLayout.getChildAt(0);
    // 內容布局不是 LinearLayout 時,設置padding top
    if (!(contentLayout instanceof LinearLayout) && contentLayout.getChildAt(1) != null) {
        contentLayout.getChildAt(1).setPadding(0, getStatusBarHeight(activity), 0, 0);
    }

    // 設置屬性
    ViewGroup drawer = (ViewGroup) drawerLayout.getChildAt(1);
    drawerLayout.setFitsSystemWindows(false);
    contentLayout.setFitsSystemWindows(false);
    contentLayout.setClipToPadding(true);
    drawer.setFitsSystemWindows(false);
}
 
開發者ID:joelan,項目名稱:ClouldReader,代碼行數:32,代碼來源:StatusBarUtil.java

示例2: setColorForDrawerLayoutDiff

import android.view.ViewGroup; //導入方法依賴的package包/類
/**
 * 為DrawerLayout 布局設置狀態欄變色(5.0以下無半透明效果,不建議使用)
 *
 * @param activity     需要設置的activity
 * @param drawerLayout DrawerLayout
 * @param color        狀態欄顏色值
 */
public static void setColorForDrawerLayoutDiff(Activity activity, DrawerLayout drawerLayout, int color) {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
        activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
        // 生成一個狀態欄大小的矩形
        View statusBarView = createStatusBarView(activity, color);
        // 添加 statusBarView 到布局中
        ViewGroup contentLayout = (ViewGroup) drawerLayout.getChildAt(0);
        contentLayout.addView(statusBarView, 0);
        // 內容布局不是 LinearLayout 時,設置padding top
        if (!(contentLayout instanceof LinearLayout) && contentLayout.getChildAt(1) != null) {
            contentLayout.getChildAt(1).setPadding(0, getStatusBarHeight(activity), 0, 0);
        }
        // 設置屬性
        ViewGroup drawer = (ViewGroup) drawerLayout.getChildAt(1);
        drawerLayout.setFitsSystemWindows(false);
        contentLayout.setFitsSystemWindows(false);
        contentLayout.setClipToPadding(true);
        drawer.setFitsSystemWindows(false);
    }
}
 
開發者ID:squareboat,項目名稱:Excuser,代碼行數:28,代碼來源:StatusBarUtil.java

示例3: setTranslucentForDrawerLayoutDiff

import android.view.ViewGroup; //導入方法依賴的package包/類
/**
 * 為 DrawerLayout 布局設置狀態欄透明(5.0以上半透明效果,不建議使用)
 *
 * @param activity     需要設置的activity
 * @param drawerLayout DrawerLayout
 */
@Deprecated
public static void setTranslucentForDrawerLayoutDiff(Activity activity, DrawerLayout drawerLayout) {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
        // 設置狀態欄透明
        activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
        // 設置內容布局屬性
        ViewGroup contentLayout = (ViewGroup) drawerLayout.getChildAt(0);
        contentLayout.setFitsSystemWindows(true);
        contentLayout.setClipToPadding(true);
        // 設置抽屜布局屬性
        ViewGroup vg = (ViewGroup) drawerLayout.getChildAt(1);
        vg.setFitsSystemWindows(false);
        // 設置 DrawerLayout 屬性
        drawerLayout.setFitsSystemWindows(false);
    }
}
 
開發者ID:pan2yong22,項目名稱:AndroidUtilCode-master,代碼行數:23,代碼來源:BarUtils.java

示例4: setTranslucentForDrawerLayoutDiff

import android.view.ViewGroup; //導入方法依賴的package包/類
/**
 * 為 DrawerLayout 布局設置狀態欄透明(5.0以上半透明效果,不建議使用)
 *
 * @param activity     需要設置的activity
 * @param drawerLayout DrawerLayout
 */
public static void setTranslucentForDrawerLayoutDiff(Activity activity, DrawerLayout drawerLayout) {
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
        // 設置狀態欄透明
        activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
        // 設置內容布局屬性
        ViewGroup contentLayout = (ViewGroup) drawerLayout.getChildAt(0);
        contentLayout.setFitsSystemWindows(true);
        contentLayout.setClipToPadding(true);
        // 設置抽屜布局屬性
        ViewGroup vg = (ViewGroup) drawerLayout.getChildAt(1);
        vg.setFitsSystemWindows(false);
        // 設置 DrawerLayout 屬性
        drawerLayout.setFitsSystemWindows(false);
    }
}
 
開發者ID:weiwenqiang,項目名稱:GitHub,代碼行數:22,代碼來源:StatusBarUtil.java

示例5: setColorForDrawerLayout

import android.view.ViewGroup; //導入方法依賴的package包/類
/**
 * 為DrawerLayout 布局設置狀態欄變色
 *
 * @param activity       需要設置的activity
 * @param drawerLayout   DrawerLayout
 * @param color          狀態欄顏色值
 * @param statusBarAlpha 狀態欄透明度
 */
public static void setColorForDrawerLayout(Activity activity, DrawerLayout drawerLayout, @ColorInt int color,
                                           int statusBarAlpha) {
    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.KITKAT) {
        return;
    }
    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(Color.TRANSPARENT);
    } else {
        activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
    }
    // 生成一個狀態欄大小的矩形
    // 添加 statusBarView 到布局中
    ViewGroup contentLayout = (ViewGroup) drawerLayout.getChildAt(0);
    if (contentLayout.getChildCount() > 0 && contentLayout.getChildAt(0) instanceof StatusBarView) {
        contentLayout.getChildAt(0).setBackgroundColor(calculateStatusColor(color, statusBarAlpha));
    } else {
        StatusBarView statusBarView = createStatusBarView(activity, color);
        contentLayout.addView(statusBarView, 0);
    }
    // 內容布局不是 LinearLayout 時,設置padding top
    if (!(contentLayout instanceof LinearLayout) && contentLayout.getChildAt(1) != null) {
        contentLayout.getChildAt(1)
                .setPadding(contentLayout.getPaddingLeft(), getStatusBarHeight(activity) + contentLayout.getPaddingTop(),
                        contentLayout.getPaddingRight(), contentLayout.getPaddingBottom());
    }
    // 設置屬性
    ViewGroup drawer = (ViewGroup) drawerLayout.getChildAt(1);
    drawerLayout.setFitsSystemWindows(false);
    contentLayout.setFitsSystemWindows(false);
    contentLayout.setClipToPadding(true);
    drawer.setFitsSystemWindows(false);

    addTranslucentView(activity, statusBarAlpha);
}
 
開發者ID:joelan,項目名稱:ClouldReader,代碼行數:45,代碼來源:StatusBarUtil.java

示例6: setColorForDrawerLayout

import android.view.ViewGroup; //導入方法依賴的package包/類
/**
 * 為DrawerLayout 布局設置狀態欄變色
 *
 * @param activity       需要設置的activity
 * @param drawerLayout   DrawerLayout
 * @param color          狀態欄顏色值
 * @param statusBarAlpha 狀態欄透明度
 */
public static void setColorForDrawerLayout(Activity activity, DrawerLayout drawerLayout, int color,
                                           int statusBarAlpha) {
    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.KITKAT) {
        return;
    }
    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(Color.TRANSPARENT);
    } else {
        activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
    }
    // 生成一個狀態欄大小的矩形
    // 添加 statusBarView 到布局中
    ViewGroup contentLayout = (ViewGroup) drawerLayout.getChildAt(0);
    if (contentLayout.getChildCount() > 0 && contentLayout.getChildAt(0) instanceof StatusBarView) {
        contentLayout.getChildAt(0).setBackgroundColor(calculateStatusColor(color, statusBarAlpha));
    } else {
        StatusBarView statusBarView = createStatusBarView(activity, color);
        contentLayout.addView(statusBarView, 0);
    }
    // 內容布局不是 LinearLayout 時,設置padding top
    if (!(contentLayout instanceof LinearLayout) && contentLayout.getChildAt(1) != null) {
        contentLayout.getChildAt(1)
                .setPadding(contentLayout.getPaddingLeft(), getStatusBarHeight(activity) + contentLayout.getPaddingTop(),
                        contentLayout.getPaddingRight(), contentLayout.getPaddingBottom());
    }
    // 設置屬性
    ViewGroup drawer = (ViewGroup) drawerLayout.getChildAt(1);
    drawerLayout.setFitsSystemWindows(false);
    contentLayout.setFitsSystemWindows(false);
    contentLayout.setClipToPadding(true);
    drawer.setFitsSystemWindows(false);

    addTranslucentView(activity, statusBarAlpha);
}
 
開發者ID:tututututututu,項目名稱:BaseCore,代碼行數:45,代碼來源:BarUtils.java

示例7: setRootView

import android.view.ViewGroup; //導入方法依賴的package包/類
/**
 * 設置根布局參數
 */
private static void setRootView(Activity activity) {
    ViewGroup rootView = (ViewGroup) ((ViewGroup) activity.findViewById(android.R.id.content)).getChildAt(0);
    //rootview不會為狀態欄流出狀態欄空間
    ViewCompat.setFitsSystemWindows(rootView,true);
    rootView.setClipToPadding(true);
}
 
開發者ID:zhao-mingjian,項目名稱:qvod,代碼行數:10,代碼來源:StatusBarUtils.java

示例8: setRootView

import android.view.ViewGroup; //導入方法依賴的package包/類
/**
 * 設置根布局參數
 */
private static void setRootView(Activity activity) {
    ViewGroup rootView = (ViewGroup) ((ViewGroup) activity.findViewById(android.R.id.content)).getChildAt(0);
    //rootview不會為狀態欄流出狀態欄空間
    ViewCompat.setFitsSystemWindows(rootView, true);
    rootView.setClipToPadding(true);
}
 
開發者ID:devzwy,項目名稱:KUtils,代碼行數:10,代碼來源:StatusBarUtils.java

示例9: setColorForDrawerLayout

import android.view.ViewGroup; //導入方法依賴的package包/類
/**
 * 為DrawerLayout 布局設置狀態欄變色
 *
 * @param activity 需要設置的activity
 * @param drawerLayout DrawerLayout
 * @param color 狀態欄顏色值
 * @param statusBarAlpha 狀態欄透明度
 */
public static void setColorForDrawerLayout(Activity activity, DrawerLayout drawerLayout, int color, int statusBarAlpha) {
    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.KITKAT) {
        return;
    }
    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(Color.TRANSPARENT);
    } else {
        activity.getWindow()
                .addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
    }
    // 生成一個狀態欄大小的矩形
    View statusBarView = createStatusBarView(activity, color);
    // 添加 statusBarView 到布局中
    ViewGroup contentLayout = (ViewGroup) drawerLayout.getChildAt(0);
    contentLayout.addView(statusBarView, 0);
    // 內容布局不是 LinearLayout 時,設置padding top
    if (!(contentLayout instanceof LinearLayout) &&
            contentLayout.getChildAt(1) != null) {
        contentLayout.getChildAt(1)
                     .setPadding(0, getStatusBarHeight(activity), 0, 0);
    }
    // 設置屬性
    ViewGroup drawer = (ViewGroup) drawerLayout.getChildAt(1);
    drawerLayout.setFitsSystemWindows(false);
    contentLayout.setFitsSystemWindows(false);
    contentLayout.setClipToPadding(true);
    drawer.setFitsSystemWindows(false);

    addTranslucentView(activity, statusBarAlpha);
}
 
開發者ID:imliujun,項目名稱:LJFramework,代碼行數:43,代碼來源:StatusBarUtil.java

示例10: setRootView

import android.view.ViewGroup; //導入方法依賴的package包/類
/**
 * 設置根布局參數
 */
@TargetApi(Build.VERSION_CODES.ICE_CREAM_SANDWICH)
private static void setRootView(Activity activity) {
    ViewGroup rootView = (ViewGroup) ((ViewGroup) activity.findViewById(android.R.id.content)).getChildAt(0);
    rootView.setFitsSystemWindows(true);
    rootView.setClipToPadding(true);
}
 
開發者ID:tututututututu,項目名稱:BaseCore,代碼行數:10,代碼來源:BarUtils.java

示例11: setColorForDrawerLayout

import android.view.ViewGroup; //導入方法依賴的package包/類
/**
 * 為DrawerLayout 布局設置狀態欄變色
 *
 * @param activity       需要設置的activity
 * @param drawerLayout   DrawerLayout
 * @param color          狀態欄顏色值
 * @param statusBarAlpha 狀態欄透明度
 */
public static void setColorForDrawerLayout(Activity activity, DrawerLayout drawerLayout, int color, int statusBarAlpha) {
    if (Build.VERSION.SDK_INT < Build.VERSION_CODES.KITKAT) {
        return;
    }
    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(Color.TRANSPARENT);
    } else {
        activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS);
    }
    // 生成一個狀態欄大小的矩形
    View statusBarView = createStatusBarView(activity, color);
    // 添加 statusBarView 到布局中
    ViewGroup contentLayout = (ViewGroup) drawerLayout.getChildAt(0);
    contentLayout.addView(statusBarView, 0);
    // 內容布局不是 LinearLayout 時,設置padding top
    if (!(contentLayout instanceof LinearLayout) && contentLayout.getChildAt(1) != null) {
        contentLayout.getChildAt(1).setPadding(0, getStatusBarHeight(activity), 0, 0);
    }
    // 設置屬性
    ViewGroup drawer = (ViewGroup) drawerLayout.getChildAt(1);
    drawerLayout.setFitsSystemWindows(false);
    contentLayout.setFitsSystemWindows(false);
    contentLayout.setClipToPadding(true);
    drawer.setFitsSystemWindows(false);

    addTranslucentView(activity, statusBarAlpha);
}
 
開發者ID:squareboat,項目名稱:Excuser,代碼行數:38,代碼來源:StatusBarUtil.java

示例12: setDrawerLayoutProperty

import android.view.ViewGroup; //導入方法依賴的package包/類
/**
 * 設置 DrawerLayout 屬性
 *
 * @param drawerLayout              DrawerLayout
 * @param drawerLayoutContentLayout DrawerLayout 的內容布局
 */
private static void setDrawerLayoutProperty(DrawerLayout drawerLayout, ViewGroup drawerLayoutContentLayout) {
    ViewGroup drawer = (ViewGroup) drawerLayout.getChildAt(1);
    drawerLayout.setFitsSystemWindows(false);
    drawerLayoutContentLayout.setFitsSystemWindows(false);
    drawerLayoutContentLayout.setClipToPadding(true);
    drawer.setFitsSystemWindows(false);
}
 
開發者ID:stytooldex,項目名稱:stynico,代碼行數:14,代碼來源:StatusBarUtil.java


注:本文中的android.view.ViewGroup.setClipToPadding方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。