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


Java EdgeEffect.setColor方法代碼示例

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


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

示例1: tintEdgeEffect

import android.widget.EdgeEffect; //導入方法依賴的package包/類
/**
 * Tint the edge effect when you reach the end of a scroll view. API 21+ only
 *
 * @param scrollableView the scrollable view, such as a {@link android.widget.ScrollView}
 * @param color          the color
 * @return true if it worked, false if it did not
 */
@TargetApi(21)
public static boolean tintEdgeEffect(@NonNull View scrollableView, @ColorInt int color) {
    //http://stackoverflow.com/questions/27104521/android-lollipop-scrollview-edge-effect-color
    boolean outcome = false;
    final String[] edgeGlows = {"mEdgeGlowTop", "mEdgeGlowBottom", "mEdgeGlowLeft", "mEdgeGlowRight"};
    for (String edgeGlow : edgeGlows) {
        Class<?> clazz = scrollableView.getClass();
        while (clazz != null) {
            try {
                final Field edgeGlowField = clazz.getDeclaredField(edgeGlow);
                edgeGlowField.setAccessible(true);
                final EdgeEffect edgeEffect = (EdgeEffect) edgeGlowField.get(scrollableView);
                edgeEffect.setColor(color);
                outcome = true;
                break;
            } catch (Exception e) {
                clazz = clazz.getSuperclass();
            }
        }
    }
    return outcome;
}
 
開發者ID:jumaallan,項目名稱:AndelaTrackChallenge,代碼行數:30,代碼來源:Easel.java

示例2: setListViewEdgeEffectColor

import android.widget.EdgeEffect; //導入方法依賴的package包/類
public static void setListViewEdgeEffectColor(AbsListView listView, int color) {
    if (Build.VERSION.SDK_INT >= 21) {
        try {
            Field field = AbsListView.class.getDeclaredField("mEdgeGlowTop");
            field.setAccessible(true);
            EdgeEffect mEdgeGlowTop = (EdgeEffect) field.get(listView);
            if (mEdgeGlowTop != null) {
                mEdgeGlowTop.setColor(color);
            }

            field = AbsListView.class.getDeclaredField("mEdgeGlowBottom");
            field.setAccessible(true);
            EdgeEffect mEdgeGlowBottom = (EdgeEffect) field.get(listView);
            if (mEdgeGlowBottom != null) {
                mEdgeGlowBottom.setColor(color);
            }
        } catch (Exception e) {
            FileLog.e("tmessages", e);
        }
    }
}
 
開發者ID:MLNO,項目名稱:airgram,代碼行數:22,代碼來源:AndroidUtilities.java

示例3: setListViewEdgeEffectColor

import android.widget.EdgeEffect; //導入方法依賴的package包/類
public static void setListViewEdgeEffectColor(AbsListView listView, int color) {
    if (Build.VERSION.SDK_INT >= 21) {
        try {
            Field field = AbsListView.class.getDeclaredField("mEdgeGlowTop");
            field.setAccessible(true);
            EdgeEffect mEdgeGlowTop = (EdgeEffect) field.get(listView);
            if (mEdgeGlowTop != null) {
                mEdgeGlowTop.setColor(color);
            }

            field = AbsListView.class.getDeclaredField("mEdgeGlowBottom");
            field.setAccessible(true);
            EdgeEffect mEdgeGlowBottom = (EdgeEffect) field.get(listView);
            if (mEdgeGlowBottom != null) {
                mEdgeGlowBottom.setColor(color);
            }
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
 
開發者ID:chengzichen,項目名稱:KrGallery,代碼行數:22,代碼來源:AndroidUtilities.java

示例4: setEdgeEffectColor

import android.widget.EdgeEffect; //導入方法依賴的package包/類
public static void setEdgeEffectColor(EdgeEffect edgeEffect, int color) {
    try {
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            edgeEffect.setColor(color);
            return;
        }
        Field edgeField = EdgeEffect.class.getDeclaredField("mEdge");
        Field glowField = EdgeEffect.class.getDeclaredField("mGlow");
        edgeField.setAccessible(true);
        glowField.setAccessible(true);
        Drawable mEdge = (Drawable) edgeField.get(edgeEffect);
        Drawable mGlow = (Drawable) glowField.get(edgeEffect);
        mEdge.setColorFilter(color, PorterDuff.Mode.SRC_IN);
        mGlow.setColorFilter(color, PorterDuff.Mode.SRC_IN);
        mEdge.setCallback(null); // free up any references
        mGlow.setCallback(null); // free up any references
    } catch (Exception ignored) {

    }
}
 
開發者ID:EuphoriaDev,項目名稱:euphoria-vk-client,代碼行數:21,代碼來源:AndroidUtils.java

示例5: setListViewEdgeEffectColor

import android.widget.EdgeEffect; //導入方法依賴的package包/類
public static void setListViewEdgeEffectColor(AbsListView listView, int color) {
    if (Build.VERSION.SDK_INT >= 21) {
        try {
            Field field = AbsListView.class.getDeclaredField("mEdgeGlowTop");
            field.setAccessible(true);
            EdgeEffect mEdgeGlowTop = (EdgeEffect) field.get(listView);
            if (mEdgeGlowTop != null) {
                mEdgeGlowTop.setColor(color);
            }

            field = AbsListView.class.getDeclaredField("mEdgeGlowBottom");
            field.setAccessible(true);
            EdgeEffect mEdgeGlowBottom = (EdgeEffect) field.get(listView);
            if (mEdgeGlowBottom != null) {
                mEdgeGlowBottom.setColor(color);
            }
        } catch (Exception e) {
          e.printStackTrace();
        }
    }
}
 
開發者ID:yeloapp,項目名稱:yelo-android,代碼行數:22,代碼來源:AndroidUtilities.java

示例6: applyEdgeEffectColor

import android.widget.EdgeEffect; //導入方法依賴的package包/類
void applyEdgeEffectColor(EdgeEffectCompat edgeEffectCompat) {
    if (Build.VERSION.SDK_INT >= 21 && glowColor != 0) {
        try {
            Field field = EdgeEffectCompat.class.getDeclaredField("mEdgeEffect");
            field.setAccessible(true);
            EdgeEffect edgeEffect = (EdgeEffect) field.get(edgeEffectCompat);
            if (edgeEffect != null) {
                edgeEffect.setColor(glowColor);
            }
        } catch (Exception e) {
            FileLog.e("tmessages", e);
        }
    }
}
 
開發者ID:MLNO,項目名稱:airgram,代碼行數:15,代碼來源:RecyclerView.java

示例7: setEdgeGlowColor

import android.widget.EdgeEffect; //導入方法依賴的package包/類
@TargetApi(Build.VERSION_CODES.LOLLIPOP)
private static void setEdgeGlowColor(@NonNull EdgeEffectCompat edgeEffect, @ColorInt int color) throws Exception {
    Field field = EdgeEffectCompat.class.getDeclaredField("mEdgeEffect");
    field.setAccessible(true);
    EdgeEffect effect = (EdgeEffect) field.get(edgeEffect);
    if (effect != null)
        effect.setColor(color);
}
 
開發者ID:cseshaiban,項目名稱:app-theme-engine-master,代碼行數:9,代碼來源:EdgeGlowUtil.java

示例8: changeEdgeEffect

import android.widget.EdgeEffect; //導入方法依賴的package包/類
@SuppressLint("NewApi")
public static void changeEdgeEffect(Context cxt, View list, int glowColor, int lineColor) {
    if (Helper.isAtLeastAPI(Build.VERSION_CODES.LOLLIPOP)) {
        EdgeEffect edgeEffectTop = new EdgeEffect(cxt);
        edgeEffectTop.setColor(glowColor);
        EdgeEffect edgeEffectBottom = new EdgeEffect(cxt);
        edgeEffectBottom.setColor(glowColor);

        try {
            Field f1 = AbsListView.class.getDeclaredField("mEdgeGlowTop");
            f1.setAccessible(true);
            f1.set(list, edgeEffectTop);

            Field f2 = AbsListView.class.getDeclaredField("mEdgeGlowBottom");
            f2.setAccessible(true);
            f2.set(list, edgeEffectBottom);
        } catch (Exception e) {
            e.printStackTrace();
        }
    } else {
        // Android < 5.0 - OverScroll Glow
        int glowDrawableId = cxt.getResources().getIdentifier("overscroll_glow", "drawable",
                "android");
        Drawable androidGlow = ContextCompat.getDrawable(cxt, glowDrawableId);
        androidGlow.setColorFilter(ContextCompat.getColor(cxt, glowColor),
                PorterDuff.Mode.SRC_ATOP);
        // Android < 5.0 - OverScroll Edge Line
        final int edgeDrawableId = cxt.getResources().getIdentifier("overscroll_edge",
                "drawable", "android");
        final Drawable overScrollEdge = ContextCompat.getDrawable(cxt, edgeDrawableId);
        overScrollEdge.setColorFilter(ContextCompat.getColor(cxt, lineColor),
                PorterDuff.Mode.SRC_ATOP);
    }
}
 
開發者ID:avluis,項目名稱:Hentoid,代碼行數:35,代碼來源:Helper.java

示例9: setScrollViewEdgeEffectColor

import android.widget.EdgeEffect; //導入方法依賴的package包/類
public static void setScrollViewEdgeEffectColor(ScrollView scrollView, int color) {
    if (Build.VERSION.SDK_INT >= 21) {
        try {
            Field field = ScrollView.class.getDeclaredField("mEdgeGlowTop");
            field.setAccessible(true);
            EdgeEffect mEdgeGlowTop = (EdgeEffect) field.get(scrollView);
            if (mEdgeGlowTop != null) {
                mEdgeGlowTop.setColor(color);
            }

            field = ScrollView.class.getDeclaredField("mEdgeGlowBottom");
            field.setAccessible(true);
            EdgeEffect mEdgeGlowBottom = (EdgeEffect) field.get(scrollView);
            if (mEdgeGlowBottom != null) {
                mEdgeGlowBottom.setColor(color);
            }
        } catch (Exception e) {
            FileLog.e(e);
        }
    }
}
 
開發者ID:DrKLO,項目名稱:Telegram,代碼行數:22,代碼來源:AndroidUtilities.java

示例10: applyEdgeEffectColor

import android.widget.EdgeEffect; //導入方法依賴的package包/類
void applyEdgeEffectColor(EdgeEffectCompat edgeEffectCompat) {
    if (Build.VERSION.SDK_INT >= 21 && glowColor != 0) {
        try {
            Field field = EdgeEffectCompat.class.getDeclaredField("mEdgeEffect");
            field.setAccessible(true);
            EdgeEffect edgeEffect = (EdgeEffect) field.get(edgeEffectCompat);
            if (edgeEffect != null) {
                edgeEffect.setColor(glowColor);
            }
        } catch (Exception e) {
            FileLog.e(e);
        }
    }
}
 
開發者ID:DrKLO,項目名稱:Telegram,代碼行數:15,代碼來源:RecyclerView.java


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