Android 自带描边颜色渐变炫酷进度条,面试必知必会

3. 画第三个圆角矩形作为进度条的最外层(进度层)盖在背景层之上

4. 描边层和背景层颜色可用纯色,进度层为了炫酷可用渐变色

这是实现该自带描边颜色渐变进度条的原理,也是在PS中实现该效果的步骤,同样适用于在Android中用代码来实现。

原理明白之后,代码就变得非常简单了:

public class ColorGradientProgressBar extends View {

/**

  • 渐变颜色组

*/

private int[] GRADIENT_COLORS = {Color.parseColor("#85D0E8"), Color.parseColor("#138CCF")};

/**

  • 最大进度

*/

private float max = 100;

/**

  • 当前进度

*/

private float progress;

/**

  • 画笔

*/

private Paint mPaint;

/**

  • 外描边的宽度

*/

private float BORDER_STROCK;

/**

  • 进度条进度矩形与控件边界的距离,≥BORDER_STROCK

*/

private float PROGRESS_STROCK;

//进度条的宽高

private int mWidth, mHeight;

/**

  • 画进度条的矩形

*/

private RectF mRectF;

public ColorGradientProgressBar(Context context, AttributeSet attrs, int defStyleAttr) {

super(context, attrs, defStyleAttr);

initView();

}

public ColorGradientProgressBar(Context context, AttributeSet attrs) {

this(context, attrs, 0);

}

public ColorGradientProgressBar(Context context) {

this(context, null);

}

private void initView() {

mPaint = new Paint();

mPaint.setAntiAlias(true);

mRectF = new RectF();

BORDER_STROCK = getResources().getDimension(R.dimen.x3);

PROGRESS_STROCK = getResources().getDimension(R.dimen.x5);

}

@Override

protected void onDraw(Canvas canvas) {

super.onDraw(canvas);

int round = mHeight / 2;//弧度为高度的一半

mRectF.set(0, 0, mWidth, mHeight);//第一层矩形(描边层)

mPaint.setColor(Color.parseColor("#A3D8E8"));//第一层矩形颜色(进度条描边的颜色)

canvas.drawRoundRect(mRectF, round, round, mPaint);//画第一层圆角矩形

mPaint.setColor(Color.parseColor("#474C4E"));//第二层矩形颜色(背景层颜色)

最后

简历首选内推方式,速度快,效率高啊!然后可以在拉钩,boss,脉脉,大街上看看。简历上写道熟悉什么技术就一定要去熟悉它,不然被问到不会很尴尬!做过什么项目,即使项目体量不大,但也一定要熟悉实现原理!不是你负责的部分,也可以看看同事是怎么实现的,换你来做你会怎么做?做过什么,会什么是广度问题,取决于项目内容。但做过什么,达到怎样一个境界,这是深度问题,和个人学习能力和解决问题的态度有关了。大公司看深度,小公司看广度。大公司面试你会的,小公司面试他们用到的你会不会,也就是岗位匹配度。

面试过程一定要有礼貌!即使你觉得面试官不尊重你,经常打断你的讲解,或者你觉得他不如你,问的问题缺乏专业水平,你也一定要尊重他,谁叫现在是他选择你,等你拿到offer后就是你选择他了。

另外,描述问题一定要慢!不要一下子讲一大堆,慢显得你沉稳、自信,而且你还有时间反应思路接下来怎么讲更好。现在开发过多依赖ide,所以会有个弊端,当我们在面试讲解很容易不知道某个方法怎么读,这是一个硬伤…所以一定要对常见的关键性的类名、方法名、关键字读准,有些面试官不耐烦会说“你到底说的是哪个?”这时我们会容易乱了阵脚。正确的发音+沉稳的描述+好听的嗓音决对是一个加分项!

最重要的是心态!心态!心态!重要事情说三遍!面试时间很短,在短时间内对方要摸清你的底子还是比较不现实的,所以,有时也是看眼缘,这还是个看脸的时代。

希望大家都能找到合适自己满意的工作!
如果需要PDF版本可以在GitHub中自行领取!

  • 或者点击这里自行下载,直达领取链接

进阶学习视频

Android 自带描边颜色渐变炫酷进度条,面试必知必会_第1张图片

附上:我们之前因为秋招收集的二十套一二线互联网公司Android面试真题 (含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)

Android 自带描边颜色渐变炫酷进度条,面试必知必会_第2张图片

互联网公司Android面试真题** (含BAT、小米、华为、美团、滴滴)和我自己整理Android复习笔记(包含Android基础知识点、Android扩展知识点、Android源码解析、设计模式汇总、Gradle知识点、常见算法题汇总。)

[外链图片转存中…(img-e5x97XXS-1645095241150)]

你可能感兴趣的:(程序员,面试,移动开发,android)