Điều này có vẻ như hơi tầm thường, tuy nhiên trong ứng dụng Android của tôi, tôi đang sử dụng canvas để vẽ một chuỗi các đường được kết nối với nhau. Đối với một số lý do đường dây của tôi rất rất mờ nhạt và mỏng. Tôi đã tự hỏi làm thế nào tôi có thể làm cho dòng của tôi dày hơn? Đây là mã của tôi ..Dòng vẽ vải Android - làm cho đường kẻ dày hơn
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);
}
Một điều khác ... các đường và vòng tròn mà tôi vẽ luôn luôn là màu đen .. setColor() dường như chưa bao giờ có hiệu lực. Tôi đã thử sử dụng tên màu (ví dụ: color.red) và thậm chí cả giá trị hex của chúng (ví dụ: 0xffff0000)
Bạn có thể đăng thêm một số mã từ lớp này, như toàn bộ onDraw không? hoặc lớp học nếu nó đủ nhỏ. Nó có vẻ ổn như nó được. Tại sao bạn tạo đối tượng Paint bên trong vòng lặp? tất cả các bạn lặp lại sử dụng cùng một 'myPaint' vì vậy tốt hơn để tạo nó một lần bên ngoài vòng lặp. – Shaunak
Tôi đã chuyển nó ra khỏi vòng lặp ngay bây giờ. Đó là tất cả mã của tôi bên trong phương thức onDraw. Tôi chỉ muốn biết làm thế nào bạn có thể làm cho các dòng dày hơn. Nó hiển thị các dòng nhưng chúng quá mỏng – user859348
Hãy thử xóa cờ anti_alias và thử sử dụng 8.0 thay thế. – Shaunak