/**
* more advanced usage for fillable in alpha
*
* @param circleRect the defined rectangle
* @return StateListDrawable item
*/
protected StateListDrawable createFillDrawable(RectF circleRect) {
StateListDrawable drawable = new StateListDrawable();
drawable.addState(new int[]{android.R.attr.state_pressed}, createAlphaDrawble(circleRect, mColorPressed, mAlpha_press));
drawable.addState(new int[]{}, createAlphaDrawble(circleRect, mColorNormal, mAlpha_normal));
return drawable;
}
java类android.graphics.drawable.StateListDrawable的实例源码
JellyBeanFloatingActionButton.java 文件源码
项目:GitHub
阅读 33
收藏 0
点赞 0
评论 0
FloatingActionButton.java 文件源码
项目:GitHub
阅读 34
收藏 0
点赞 0
评论 0
/**
* @param circleRect the defined rectangle
* @param alpha between 0 - 1
* @return StateListDrawable
*/
protected StateListDrawable createFillDrawable(RectF circleRect, float alpha) {
StateListDrawable drawable = new StateListDrawable();
drawable.addState(new int[]{android.R.attr.state_pressed}, createAlphaDrawble(circleRect, mColorPressed, alpha));
drawable.addState(new int[]{}, createAlphaDrawble(circleRect, mColorNormal, alpha));
return drawable;
}
FloatingActionButton.java 文件源码
项目:GitHub
阅读 33
收藏 0
点赞 0
评论 0
/**
* @param circleRect the defined rectangle
* @return StateListDrawable
*/
protected StateListDrawable createFillDrawable(RectF circleRect) {
StateListDrawable drawable = new StateListDrawable();
drawable.addState(new int[]{android.R.attr.state_pressed}, createCircleDrawable(circleRect, mColorPressed));
drawable.addState(new int[]{}, createCircleDrawable(circleRect, mColorNormal));
return drawable;
}
DayView.java 文件源码
项目:boohee_v5.6
阅读 36
收藏 0
点赞 0
评论 0
private static Drawable generateBackground(int color, int fadeTime) {
StateListDrawable drawable = new StateListDrawable();
drawable.setExitFadeDuration(fadeTime);
drawable.addState(new int[]{16842912}, generateCircleDrawable(color));
if (VERSION.SDK_INT >= 21) {
drawable.addState(new int[]{16842919}, generateRippleDrawable(color));
} else {
drawable.addState(new int[]{16842919}, generateCircleDrawable(color));
}
drawable.addState(new int[0], generateCircleDrawable(0));
return drawable;
}
MsgView.java 文件源码
项目:GitHub
阅读 40
收藏 0
点赞 0
评论 0
public void setBgSelector() {
StateListDrawable bg = new StateListDrawable();
setDrawable(gd_background, backgroundColor, strokeColor);
bg.addState(new int[]{-android.R.attr.state_pressed}, gd_background);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {//16
setBackground(bg);
} else {
//noinspection deprecation
setBackgroundDrawable(bg);
}
}
MsgView.java 文件源码
项目:GitHub
阅读 30
收藏 0
点赞 0
评论 0
public void setBgSelector() {
StateListDrawable bg = new StateListDrawable();
setDrawable(gd_background, backgroundColor, strokeColor);
bg.addState(new int[]{-android.R.attr.state_pressed}, gd_background);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) {//16
setBackground(bg);
} else {
//noinspection deprecation
setBackgroundDrawable(bg);
}
}
WoWoStateListColorAnimation.java 文件源码
项目:GitHub
阅读 25
收藏 0
点赞 0
评论 0
private void setColors(View view, int[] colors) {
Drawable drawable = view.getBackground();
if (drawable instanceof StateListDrawable) {
StateListDrawable stateListDrawable = (StateListDrawable) drawable;
DrawableContainerState drawableContainerState = (DrawableContainerState) stateListDrawable.getConstantState();
if (drawableContainerState != null) {
Drawable[] drawables = drawableContainerState.getChildren();
for (int i = 0; i < colors.length; i++) if (drawables[i] instanceof GradientDrawable) ((GradientDrawable) drawables[i]).setColor(colors[i]);
}
} else Log.w(TAG, "Drawable of view must be StateListDrawable in WoWoStateListColorAnimation");
}
NavigationMenuItemView.java 文件源码
项目:boohee_v5.6
阅读 30
收藏 0
点赞 0
评论 0
private StateListDrawable createDefaultBackground() {
TypedValue value = new TypedValue();
if (!getContext().getTheme().resolveAttribute(R.attr.colorControlHighlight, value, true)) {
return null;
}
StateListDrawable drawable = new StateListDrawable();
drawable.addState(CHECKED_STATE_SET, new ColorDrawable(value.data));
drawable.addState(EMPTY_STATE_SET, new ColorDrawable(0));
return drawable;
}
DayView.java 文件源码
项目:GitHub
阅读 41
收藏 0
点赞 0
评论 0
private static Drawable generateBackground(int color, int fadeTime, Rect bounds) {
StateListDrawable drawable = new StateListDrawable();
drawable.setExitFadeDuration(fadeTime);
drawable.addState(new int[]{android.R.attr.state_checked}, generateCircleDrawable(color));
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
drawable.addState(new int[]{android.R.attr.state_pressed}, generateRippleDrawable(color, bounds));
} else {
drawable.addState(new int[]{android.R.attr.state_pressed}, generateCircleDrawable(color));
}
drawable.addState(new int[]{}, generateCircleDrawable(Color.TRANSPARENT));
return drawable;
}
SelectorFactory.java 文件源码
项目:HeadlineNews
阅读 29
收藏 0
点赞 0
评论 0
public StateListDrawable create() {
StateListDrawable selector = new StateListDrawable();
//enabled = false
if (hasSetDisabledBgColor || hasSetDisabledStrokeColor) {
GradientDrawable disabledShape = getItemShape(mShape, mCornerRadius,
mDisabledBgColor, mStrokeWidth, mDisabledStrokeColor);
selector.addState(new int[]{-android.R.attr.state_enabled}, disabledShape);
}
//pressed = true
if (hasSetPressedBgColor || hasSetPressedStrokeColor) {
GradientDrawable pressedShape = getItemShape(mShape, mCornerRadius,
mPressedBgColor, mStrokeWidth, mPressedStrokeColor);
selector.addState(new int[]{android.R.attr.state_pressed}, pressedShape);
}
//selected = true
if (hasSetSelectedBgColor || hasSetSelectedStrokeColor) {
GradientDrawable selectedShape = getItemShape(mShape, mCornerRadius,
mSelectedBgColor, mStrokeWidth, mSelectedStrokeColor);
selector.addState(new int[]{android.R.attr.state_selected}, selectedShape);
}
//focused = true
if (hasSetFocusedBgColor || hasSetFocusedStrokeColor) {
GradientDrawable focusedShape = getItemShape(mShape, mCornerRadius,
mFocusedBgColor, mStrokeWidth, mFocusedStrokeColor);
selector.addState(new int[]{android.R.attr.state_focused}, focusedShape);
}
//default
GradientDrawable defaultShape = getItemShape(mShape, mCornerRadius,
mDefaultBgColor, mStrokeWidth, mDefaultStrokeColor);
selector.addState(new int[]{}, defaultShape);
return selector;
}