Подтвердить что ты не робот

Линия рисования холста Android - сделайте линию толще

Кажется, что это должно быть несколько тривиально, однако в моем приложении для Android я использую холст для рисования ряда строк, которые связаны друг с другом. По какой-то причине мои линии очень слабые и тонкие. Мне было интересно, как я могу сделать мои линии толще? Вот мой код..

for(int i=1; i<myArrayListOfValues.size(); i++){

        Paint myPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
        myPaint.setStrokeWidth(8/*1 /getResources().getDisplayMetrics().density*/);
        myPaint.setColor(0xffff0000);   //color.RED

        canvas.drawLine(myArrayListOfValues.get(i), myArrayListOfValues.get(i), myArrayListOfValues.get(i-1), myArrayListOfValues.get(i-1), myPaint);       

    }

Еще одна вещь: мои линии и круги, которые я рисую, ВСЕГДА черные.. setColor() никогда не имеет никакого эффекта. Я попытался использовать имена цветов (например, color.red) и даже их шестнадцатеричные значения (например, 0xffff0000)

4b9b3361

Ответ 1

Попробуйте включить эту строку сразу после того, как вы уменьшите 'mypaint'

 mypaint.setStyle(Paint.Style.STROKE); 

Ответ 2

Измените значение

myPaint.setStrokeWidth(8);

для большего целого числа, например:

myPaint.setStrokeWidth(50);

он сделает линию более толстой

см. также Paint.setStrokeWidth(float)

Ответ 3

Что произойдет, если вы удалите ANTI_ALIAS_FLAG? Кроме того, вы должны переместить конструктор Paint вне цикла for, чтобы он не воссоздавался на каждой итерации.