#android #android-canvas #paint
#Android #android-холст #Краски
Вопрос:
Это моя деятельность, в которой я использую для рисования пунктирной линии. но я хочу нарисовать градиент или какой-то стиль в строке..
DragObserverLayout.java
//class for draw line from one place to another
public class DragObserverLayout extends RelativeLayout {
float startX, startY, stopX, stopY;
private Paint mPaint = new Paint(Paint.ANTI_ALIAS_FLAG);
private List<Rect> lines = new ArrayList<Rect>();
public List<Path> linePath = new ArrayList<Path>();
//class for dragging
public DragObserverLayout(Context context, AttributeSet attrs) {
super(context, attrs);
//setting color stroke and effect
mPaint.setColor(Color.RED);
mPaint.setStyle(Style.STROKE);
mPaint.setStrokeCap(Paint.Cap.BUTT);
mPaint.setPathEffect(new DashPathEffect(new float[] {5,5}, 0));
mPaint.setStrokeWidth(10.0f);
}
//for canvas
@Override
protected void dispatchDraw(Canvas canvas) {
super.dispatchDraw(canvas);
final int count = lines.size();
for (int i = 0; i < count; i ) {
final Rect r = lines.get(i);
canvas.drawLine(r.left, r.top, r.right, r.bottom, mPaint);
}
}
Комментарии:
1. Пожалуйста, напишите правильную строку и скажите мне, где я должен использовать??
2. какая правильная линия? что вы имеете в виду?
3. я не знаю, как использовать setShader, так что можете ли вы показать какой-нибудь пример
4. вы пробовали что-нибудь?
5. я попробовал растровое изображение, также попробовал шейдер, но ничего не происходит, поэтому я здесь, в StackOverflow