Articles of android canvas

Android Live Wallpapers – OpenGL vs Canvas

Я довольно разработчик Android «newb», и я хотел бы, чтобы один из моих первых проектов был живым обоями, однако я не согласен с тем, должен ли я фокусироваться на Canvas или OpenGL для него. Будучи новичком в этом, я знаю, что сначала я должен овладеть Canvas, так как это проще в использовании, но я предпочитаю […]

Добавление цветного фона с текстом / значком под развернутой строкой при использовании Android RecyclerView

EDIT: Реальная проблема заключалась в том, что мой LinearLayout был завернут в другой макет, что вызвало неправильное поведение. В принятом ответе Sanvywell есть лучший, более полный пример того, как рисовать цвет под видимым представлением, чем фрагмент кода, который я предоставил в вопросе. Теперь, когда виджет RecyclerView имеет встроенную поддержку для прокрутки строк с помощью класса […]

Медленное приложение с фоновым изображением

Я делаю маленькую игру для Android. Он работает плавно, когда работает на белом фоне, но когда я хочу поместить фоновое изображение, он становится все медленнее и медленнее. Сначала я попытался добавить его в качестве фонового изображения макета, но он был очень медленным, анимации происходили по кадре. И затем я решил нарисовать фоновое изображение как растровое […]

Изображение в холсте с сенсорными событиями

Кажется простым, и все же у меня проблемы с реализацией. Я хочу холст с изображением на экране, включая события onTouch . Я пробовал ImageView но я не смог использовать холст. Я попробовал SurfaceView и смог показать изображение в холсте на экране, но у меня проблемы с motion onTouch событиями (zoom, pan). Мне нужен холст, потому […]

Android BlurMaskFilter не влияет на canvas.drawOval, в то время как текст размыт

Я пытаюсь создать пользовательский вид, который имеет размытые формы под текстом. Проблема в том, что BlurMaskFilter не влияет на любую фигуру, которую я рисую на холсте. Вот как я инициализирую объекты Paint в конструкторе: paint = new Paint(0); paint.setColor(0xffffffff); paint.setMaskFilter(new BlurMaskFilter(8, BlurMaskFilter.Blur.NORMAL)); mShadowPaint = new Paint(0); mShadowPaint.setColor(0xff333333); mShadowPaint.setMaskFilter(new BlurMaskFilter(10, BlurMaskFilter.Blur.NORMAL)); И я вызываю такие функции […]

PorterduffXfermode: очистить раздел растрового изображения

Цель состоит в том, чтобы просто нарисовать растровое изображение и поверх него нарисовать фигуры, которые УДАЛИТЬ базовую область растрового изображения. Я создал простое доказательство кода концепции, чтобы попытаться понять, как именно я должен идти по этому поводу. В различных потоках здесь я нашел многочисленные подсказки об использовании: android.graphics.PorterDuff.Mode.CLEAR В приведенном ниже коде просто создается экран […]

Ищете объяснение post / pre / set Translate (в объекте Matrix) и как их использовать

Документация довольно неопределенная относительно того, что на самом деле происходит, когда эти методы используются. Может ли кто-нибудь объяснить, как Матрица на самом деле влияет на битмап, на который он настроен? Они используют термин concatenate там, но я не понимаю, как этот термин применяется к координатным данным (которые раньше использовали его только для манипуляции строкой).

Hex Colors на Android – это 8 цифр. Как? В чем разница между #FFFFFF и # FFFFFF00

Я иногда видел в примерах, где раскраска в Android выполняется как # FF191919. Я имею в виду восьмизначный шестнадцатеричный номер. Но это должно быть только 6-значное число. Как они связаны? Если я хочу o конвертировать 6-значное число в 8-значное число. Как это сделать? Я имею в виду конвертировать # 424242 в 8-значную цифровую раскраску? Пожалуйста, […]

Как нарисовать заполненный треугольник в андроидном холсте?

Поэтому я рисую этот треугольник на картах Android, используя следующий код в методе рисования: paint.setARGB(255, 153, 29, 29); paint.setStyle(Paint.Style.FILL_AND_STROKE); paint.setAntiAlias(true); Path path = new Path(); path.moveTo(point1_returned.x, point1_returned.y); path.lineTo(point2_returned.x, point2_returned.y); path.moveTo(point2_returned.x, point2_returned.y); path.lineTo(point3_returned.x, point3_returned.y); path.moveTo(point3_returned.x, point3_returned.y); path.lineTo(point1_returned.x, point1_returned.y); path.close(); canvas.drawPath(path, paint); Точка X_returned – это координаты, которые я получаю от полей. Это, в основном, широты и […]

Рисовать в холсте пальцем, Android

Мне нужно построить проект для рисования на холсте пальцами, Чтобы получить событие касания и событие движения пальца, а оттуда. Любой может посоветовать мне, как начать работу в проекте, И что является лучшим компонентом для этого?