美文网首页叶子自律成长营
孤独与痛苦其实是人生的常态

孤独与痛苦其实是人生的常态

作者: Eren丶耶格尔 | 来源:发表于2019-02-25 22:43 被阅读13次

    日结| Day27

    孤独与痛苦其实是人生的常态,有的人不愿意接受或者他没有意识到,所以他需要把快乐的时光分享到各种社交平台上,来欺骗自己以及别人他是快乐的;另外一些人则接受了这个事实

    早起

    6点50准时起床,阅读《活着》

    运动

    俯卧撑:3组20个,哑铃:3组10个,深蹲:3组10个

    电影

    看了一部电影《脸对脸,背对背》,难得的国产好电影。深刻反应中国社会的人情现实和处事根本。
    有的时候机关算尽也不一定如愿,不如放下争执,专注于提升自我,相信有一天,定然会有所收获。

    阅读

    阅读新书《活着》

    学习

    《自定义控件》第七章 贝济埃曲线实现部分,绘制波浪效果


    示例图

    具体代码如下:

    public class AnimWaveView extends View {
    
        private Paint paint;
        private Path path = new Path();
        // 波浪长度
        private int itemWaveLength = 1200;
        // 动画移动指数
        private int dx;
    
        public AnimWaveView(Context context) {
            super(context);
            init();
        }
    
    
        public AnimWaveView(Context context, @Nullable AttributeSet attrs) {
            super(context, attrs);
            init();
        }
    
        public AnimWaveView(Context context, @Nullable AttributeSet attrs, int defStyleAttr) {
            super(context, attrs, defStyleAttr);
            init();
        }
    
        // 初始化
        private void init() {
            path = new Path();
            paint = new Paint(Paint.ANTI_ALIAS_FLAG);
            paint.setColor(Color.GREEN);
            paint.setStyle(Paint.Style.FILL);
    
            startAnim();
        }
    
        // 开始动画
        private void startAnim() {
            ValueAnimator animator = ValueAnimator.ofInt(0, itemWaveLength);
            animator.setDuration(2000);
            animator.setRepeatCount(ValueAnimator.INFINITE);
            animator.setInterpolator(new LinearInterpolator());
            animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
                @Override
                public void onAnimationUpdate(ValueAnimator animation) {
                    dx = (int) animation.getAnimatedValue();
                    postInvalidate();
                }
            });
            animator.start();
        }
    
        @Override
        protected void onDraw(Canvas canvas) {
            super.onDraw(canvas);
            path.reset();
            int originY = 300;
            int halfWaveLen = itemWaveLength / 2;
            // 将起始点向右移动即可实现,将 path 移动到向左一个波长,移动一个波长的长度,波纹就会重合,就可以实现无限循环
            path.moveTo(-itemWaveLength + dx, originY);
            // for 循环画出当前屏幕中可以容得下的所有波形
            for (int i = -itemWaveLength; i < getWidth() + itemWaveLength; i += itemWaveLength) {
                path.rQuadTo(halfWaveLen / 2, -100, halfWaveLen, 0);
                path.rQuadTo(halfWaveLen / 2, 100, halfWaveLen, 0);
            }
            // 闭合
            path.lineTo(getWidth(), getHeight());
            path.lineTo(0, getHeight());
            path.close();
            // 绘制
            canvas.drawPath(path, paint);
        }
    }
    

    相关文章

      网友评论

        本文标题:孤独与痛苦其实是人生的常态

        本文链接:https://www.haomeiwen.com/subject/lcynyqtx.html