Articles of canvas

Рисование на холсте с пользовательским взаимодействием немного отсталое

Я начал изучать рисование холста с помощью Android, и я хотел бы сделать простое приложение. В приложении запускается так называемая «змея», начинающая двигаться по экрану, когда пользователь нажимает экран, «змея» меняет направление. Я достиг этого легко, но есть небольшая проблема: Когда пользователь нажимает на экран, змея иногда меняет направление в этот конкретный момент, иногда сразу […]

Внедрение на андроидном холсте

У меня есть обычный детектор жестов для обнаружения fling, это атрибут экземпляра SurfaceView GestureDetector flingDetector = new GestureDetector(getContext(),new SimpleOnGestureListener() { @Override public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX, float velocityY) { // Fling implementation return true; } }); Я рисую много сложного материала на canvas и у меня есть метод translate(dx,dy) который я использую […]

Как установить размер холста?

У меня есть класс под названием SeatsPanel, где я рисую места (используя drawRect) в методе onDraw. Метод onDraw использует Canvas в качестве параметра, но как вы определяете размер Canvas? Причина, по которой я задаю этот вопрос, состоит в том, что этот класс раздувается в другом классе. Я знаю, что размер холста имеет высоту и ширину […]

Android пропускает onDraw (), когда я запускаю свою анимацию в обратном порядке

У меня есть реализация раздвижных фрагментов DevByte . Кроме того, чтобы скопировать фрагмент в поле зрения, я хочу нарисовать тень над содержимым, которое оно закрывает. Я изменил FractionalLinearLayout из видео, чтобы measure себя в два раза больше ширины экрана и layout его дочерние элементы в правой половине. Во время цикла анимации я рисую черный прямоугольник […]

Использование ресурсов Layout в LiveWallpaper на Android

Когда вы создаете LiveWallpaper в Android 2.2+, вы получаете холст (или, что то же, что 3D-эквивалент), чтобы рисовать. Я хотел бы нарисовать некоторые элементы, используя встроенные инструменты пользовательского интерфейса Android, вместо того, чтобы строить все с нуля, используя команды холста или загрузку предварительно обработанного растрового изображения UI. Преобразование одного представления в растровое изображение отлично работает. […]

Установка нескольких настраиваемых элементов в MultiAutoCompleteTextView: Android

Продолжая свой предыдущий пост, я смог установить несколько элементов в MultiAutoCompleteTextView но я не смог обернуть эти элементы с помощью специальной кнопки фона и закрытия, как в этом изображении ссылки. Я смог сделать то же самое с одним элементом, но для нескольких, закончил неудачу. Это то, что я пробовал. // установить текст в MultiAutoCompleteTextView private […]

Объедините два растровых изображения и сохраните в формате jpg в android?

У меня есть два растровых изображения в моем проекте, что мне нужно, так это то, что мне нужно объединить эти две битовые карты и объединить эти битовые карты с одним изображением. Я покажу свой код public class FotosurpriseActivity extends Activity { /** Called when the activity is first created. */ Bitmap overlay; Paint pTouch; int […]

Как Canvas.drawText () действительно рисует текст?

В этой документации метода написано, что: x The x-coordinate of origin for where to draw the text y The y-coordinate of origin for where to draw the text Но он ничего не говорит о направлении, которое этот текст нарисован. Я знаю, что текст извлекается из источника вверх, но когда я даю следующие аргументы, мой текст […]

Разница между Camera.translate и Matrix.preTranslate или Matrix.postTranslate?

Мы используем Camera для 3D-преобразования в canvas. Обычно мы поворачиваем камеру и получаем ее Matrix, а затем переводим ее. Но камера также имеет метод translate. Результаты использования методов разные. Мой вопрос: в чем разница между Camera.translate и Matrix.preTranslate или Matrix.postTranslate?

Bitmap.compress возвращает false для рисунка

У меня есть код, в котором пользователь рисует что-то на экране, и я хочу сохранить его как PNG в байте []. Однако метод compress () возвращает false. Любая идея, почему это так? Есть ли лучший способ получить байт []? Bitmap bm = Bitmap.createBitmap(mWidth, mHeight, Bitmap.Config.ALPHA_8); Canvas c = new Canvas(bm); c.drawPath(mSignaturePath, mSignaturePaint); ByteArrayOutputStream out = […]