android: как нарисовать простую линию и отобразить ее в виджете? - PullRequest
0 голосов
/ 15 февраля 2012

Я хочу визуализировать вещи с помощью виджета, рисуя несколько линий. скажем, я получаю две координаты (x, y) каждые n секунд, а затем хочу соответственно обновить виджет. сейчас это прекрасно работает, но теперь я хочу нарисовать линию между этими двумя точками.

Я погуглил и нашел много вещей, но ничего не объясняющих основ рисования на изображении. поскольку у меня НЕТ опыта работы с графикой, я представляю, что эти вещи работают так же, как графика, нарисованная с помощью tikzpicture в LaTeX.

Может кто-нибудь объяснить мне, как все это работает, или, по крайней мере, указать мне пример, объясняющий это с самого начала? это будет высоко ценится!

спасибо!

Ответы [ 2 ]

4 голосов
/ 15 февраля 2012

В Android обычно все сводится к рисованию на холсте, например, как в методе View.onDraw ().

// prepare picture
if (mBackground != null) {
    mBackground.recycle();
}
mBackground = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
Canvas backgroundCanvas = new Canvas(mBackground);
backgroundCanvas.scale(width, height);
RectF rect = new RectF(0f, 0f, 1f, 1f);
Paint paint = new Paint();
paint.setFlags(Paint.ANTI_ALIAS_FLAG);
paint.setColor(Color.parseColor("#18a518")); // gray

// draw line
backgroundCanvas.drawLine(startX, startY, stopX, stopY, paint);

onDraw ():

// draw picture on View canvas
@Override
public void onDraw(Canvas canvas) {
    canvas.drawBitmap(mBackground, 0, 0, null);
}

ADD

Цепочка примитивов выглядит следующим образом: 1 создайте свой собственный класс View (расширение).2 Определите метод onDraw() в своем представлении.3 Поместите вид в XML-файл макета (или добавьте во время выполнения: Activity.addContentView()).4 Если необходимо перерисовать, позвоните invalidate(); // forces onDraw() to be called.
Для получения подробной информации см. Примеры Android от Google.

Затем, если вы хотите повысить эффективность, изучите SurfaceView.Но на поверхности мы также рисуем на холсте.

0 голосов
/ 17 февраля 2012

http://www.droidnova.com/playing-with-graphics-in-android-part-i,147.html

может помочь для начала.к сожалению, это все еще оставляет меня в неведении, как на самом деле рисовать на макете виджетов ...

... и отвечать на него самому: android: как добавить настроенное изображение в виджеты?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...