Articles of ondraw

Рисование на холсте вне метода onDraw ()

Вот мой метод OnDraw () void onDraw(Canvas canvas) { mCanvas = canvas; //invalidate(); int x = 0; Iterator<Letter> it = mNextUpQueue.iterator(); while(it.hasNext()){ mCanvas.drawBitmap(it.next().getNext(), mNextUpCoordinates.get(x).x, mNextUpCoordinates.get(x).y, mPaint); mCanvas.drawBitmap(mAvailableLetters.get(x).getNotPressed(), mAvailableLettersCoordinates.get(x).x, mAvailableLettersCoordinates.get(x).y, mPaint); x++; } } Я установил canvas для глобальной переменной mCanvas. Но если я пытаюсь рисовать на mCanvas вне метода onDraw (), я получаю сообщение об […]

Эффективный 2D-чертеж в Android

Я искал немало часов и не смог найти четкого ответа на мой вопрос. У меня есть приложение, где мне нужно нарисовать спортивное поле (включая все тональные линии) на экране. До сих пор я расширил SurfaceView и в значительной степени скопировал оставшуюся часть демо-версии LunarLander. Все данные, которые приложение требует, чтобы рисовать высоту до правильных размеров, […]

DrawBitmap не является полноэкранным

Я показываю изображение, используя метод onDraw, например: public void onDraw(Canvas canvas) { super.onDraw(canvas); Bitmap background = BitmapFactory.decodeResource(getResources(), R.drawable.photo0); canvas.drawColor(Color.BLACK); canvas.drawBitmap(background, 0, 0, null); Я хочу установить это изображение в качестве фона, но оно отображается только на части экрана. Как установить его как полноэкранный режим? Есть способ установить изображение в качестве фона из xml и нарисовать […]

Метод 'onDraw ()' будет вызываться дважды, когда вызывается 'invalidate'

Метод ' onDraw () ' будет вызываться дважды, когда вызывается ' invalidate '. Я хочу переместить вид в onDraw() , вот мой код package com.blsm.sss.view; public class MoveRelativeLayout extends RelativeLayout { private int mDelta = 0; public MoveRelativeLayout(Context context, AttributeSet attrs) { super(context, attrs); } public MoveRelativeLayout(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, […]

Проблемы с Android FrameLayout при переопределении onDraw

protected void onDraw(Canvas canvas) { float width = canvas.getWidth(); float height = canvas.getHeight(); Path path = new Path(); path.addArc(new RectF(0, 0, width, height), 90, 180); canvas.clipPath(path); Paint paint = new Paint(); paint.setAntiAlias(true); paint.setColor(Color.RED); canvas.drawRect(new RectF(0, 0, width, height), paint); } Я использую этот код для переопределения других представлений; Это нормально (показать полукруг); Но когда я […]

Текст перекрытия андроидов

Попытка привлечь автомобильные датчики в android с помощью Paint и ondraw () с использованием кода с открытым исходным кодом. Датчики работали довольно хорошо, но были проблемы с Android 4 и выше. После этого изменился объект Paint, установив setLinearText (true), из-за чего все работает. Но теперь текст в манометрах начал перекрываться, и все выглядит размытым, как […]

Android onDraw () выполняется во всех представлениях?

Вот странное поведение, которое я не понимаю о пользовательских представлениях. У меня два вида в макете кадра, один поверх другого. Представления просты, и я сделал их только для короткого теста public class View1 extends View { …. @Override public boolean onTouchEvent(MotionEvent event) { if (event.getAction() == MotionEvent.ACTION_DOWN){ this.updateDrawings(); } return true; } @Override protected void […]

Android Canvas и Hardware Acceleration?

Привет всем, мне было интересно, можно ли рисовать на экране Canvas / Bitmap и использовать аппаратное ускорение или мне нужно рисовать внутри onDraw() View Например, я рисую на экранном растровом изображении, делая следующее: Bitmap.Config config = Bitmap.Config.ARGB_8888; Bitmap buffer = Bitmap.createBitmap(200, 200, config); Canvas canvas = new Canvas(buffer); Paint paint = new Paint(); paint.setColor(Color.RED); canvas.drawLine(0, […]

Как использовать мягкую клавиатуру Android в SurfaceView

У меня есть SurfaceView, на который я рисую, нет элементов управления, текстовых полей или любого другого типа элемента типа формы. Я хотел бы иметь возможность: 1: коснитесь одного из кругов, нарисованных методом SurfaceView onDraw (), и откройте стандартную программную клавиатуру Android. (Я знаю, как сделать часть обнаружения касания, просто нужно как-то открыть мягкую клавиатуру) 2: […]

Холст Android – Нарисуйте отверстие

Возможно ли реализовать следующую картинку на Android с холстом? Я хочу иметь отверстие и не только круг над красным слоем, который имеет желтый цвет. Я пробовал это (и не удалось) со следующим кодом в моем onDraw() -Мотод: canvas.drawBitmap(yellow, 0, 0, paint); canvas.drawBitmap(red, 0, 200, paint); Paint p = new Paint(); p.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.CLEAR)); canvas.drawCircle(300, 300, radius, […]

Intereting Posts
Иногда listView.getChildAt (int index) возвращает NULL (Android) Непоследовательное масштабирование изображений на Android для Android: scaleType = "fitCenter" React Native Android отпадает при попытке отладки в Chrome Пул соединений SQLite Android Wear – доступ к общим настройкам для мобильных устройств Как отключить кнопку «Очистить данные» в «Информация о приложении» для «Управление приложением» Связь Dalvik с Java SE Java.io.filenotfoundexception открыть сбой eacces (разрешение отклонено) на устройстве Android sdk facebook, как узнать, когда пользователь больше не использует ваше приложение Как определить, является ли сеть (настроенная как) мобильной точкой доступа на Android? React Native Интеграция с существующим флеш-приложением Android Получить Android WiFi «net.hostname» из кода Android: Java v. Python Как изменить содержимое фрагмента при передаче данных из фрагмента после извлечения в RecyclerView? Безопасный для ввода пароля в мобильном приложении