Как сделать слушатель для графики OnDraw в MainActivity на нажатие?
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.util.AttributeSet;
import android.view.View;
public class RectButton extends View {
public RectButton(Context context) {
super(context);
}
public RectButton(Context context, AttributeSet attrs) {
super(context, attrs);
}
public RectButton(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
Paint paint = new Paint();
paint.setColor(Color.RED);
canvas.drawRect(100, 100, 600, 600, paint);
}
}
public class RectButton extends View {
boolean isClicked = false;
Rect rect = new Rect(100, 200, 150, 250);
public RectButton(Context context) {
super(context);
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
Paint paint = new Paint();
if (isClicked)
{
paint.setColor(Color.RED);
} else
{
paint.setColor(Color.BLACK);
}
canvas.drawRect(rect , paint);
}
@Override
public boolean onTouchEvent(MotionEvent event)
{
int action = event.getActionMasked();
if (action == MotionEvent.ACTION_UP)
{
int x = (int) event.getX();
int y = (int) event.getY();
if ((x > rect.left & x < rectf.right) &&
(y > rect.top & x < rectf.bottom))
{
isClicked = (isClicked)? false:true; //нажата кнопка
invalidate(); //перерисуем view
}
}
return true;
}
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
У меня есть mysql сервер и 2 приложения: web (сайт, grails 3) и android приложениеБаза данных содержит расписание матчей
Как в одном из нескольких фрагментов добавить постоянно отображающийся клавиатуру
Здравствуйте! У меня почему то не работает кнопки в Mozilla Firefox, если внутри них расположить иконку или картинкуС чем это связано, и как эту проблему...
Наверняка многие пользовались функциональностью для отображения и скрытия определенного контента посредством Bootstrap CollapseВот и я пользуюсь,...