1

キャンバスがあります!1.キャンバスにグラフを描いています(下記参照)!2. 間に点と線を引きます。3.すべての点が線上にあることを計算し、下に小さな線を引きます。4. そして、are #e5fafd color でグラデーションを描きます!

private void drawGradient(Canvas canvas){
    Paint gradientPainter = new Paint();
    gradientPainter.setStrokeWidth(5);
    gradientPainter.setShader(new LinearGradient(0, 0, 0, getHeight(), getResources().getColor(R.color.graph_gradient_start), Color.TRANSPARENT, Shader.TileMode.CLAMP));

    for(int i = 0; i < ourCoords.size(); i++){
        if(i != ourCoords.size() - 1){
            final float x = ourCoords.get(i+1).getxCoord() - ourCoords.get(i).getxCoord();
            final float y = ourCoords.get(i+1).getyCoord() - ourCoords.get(i).getyCoord();
            float xT = ourCoords.get(i).getxCoord(), yT = ourCoords.get(i).getyCoord();
            final float percentX = (float) (x / 100.0);
            final float percentY = (float) (y / 100.0);
            for(float j= (float) 0.1; j<100.0; j++){
                float startX = (percentX * j) + xT;
                float startY = (percentY * j) + yT;
                float endX = startX;
                float endY = startY + 400;
                if(startX < (canvasWidth - marginLeft - 8)){
                    canvas.drawLine(startX, startY, endX, endY, gradientPainter);
                }
            }
        }
        drawPoints(canvas, ourCoords.get(i).getxCoord(), ourCoords.get(i).getyCoord(), 20);
    }
}

やっと黒のグラデーションになりました。私を助けてください。間違いをお詫びします。画面参照 http://mepic.ru/view/?id=b1904b5d5b6d156e83206ab0c485d40a

4

0 に答える 0