Всем привет. Пишу приложение на android для управления LED-лампой и для этого возникла задача сделать Color Picker который будет регулировать теплый и холодный белые цвета.
Для этого у меня есть цветовой круг такого плана:
Я понимаю что проще было бы сделать все в виде полосы, например как в SeekBar, но дизайн приложения требует именно круг =)
Я не очень понимаю как сделать так, чтобы курсор, который будет находится поверх данного круга, не выходил за его пределы.
Привожу кусок кода, который на данный момент у меня имеется:
cursor = findViewById(R.id.cursor);
info = findViewById(R.id.info);
imageView = findViewById(R.id.colorWheel);
imageView.invalidate();
BitmapDrawable drawable = (BitmapDrawable) imageView.getDrawable();
final Bitmap bitmap = drawable.getBitmap();
float radius = Math.min(bitmap.getWidth() / 2, bitmap.getHeight() / 2);
Log.d(getClass().getSimpleName(), "width: " + bitmap.getWidth());
Log.d(getClass().getSimpleName(), "height: " + bitmap.getHeight());
Log.d(getClass().getSimpleName(), "onCreate: radius = " + radius);
imageView.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
ImageView img = (ImageView) v;
final int evX = (int) event.getX();
final int evY = (int) event.getY();
cursor.setTranslationX(evX);
cursor.setTranslationY(evY);
info.setText("x: " + evX + "; y: " + evY);
Log.d(getClass().getSimpleName(), "x: " + evX + "; y: " + evY);
img.setDrawingCacheEnabled(true);
Bitmap imgbmp = Bitmap.createBitmap(img.getDrawingCache());
img.setDrawingCacheEnabled(false);
try {
int pxl = imgbmp.getPixel(evX, evY);
Log.d(getClass().getSimpleName(), "Red = " + Color.red(pxl)
+ "; Green = " + Color.green(pxl) + "; Blue = " + Color.blue(pxl));
//pickedColorView.setBackgroundColor(pxl);
} catch (Exception ignore) {
}
imgbmp.recycle();
return true;
}
});
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Имеется конструктор, который получает какой-либо объект наследуемый от Node, те
Необходимо сделать константы по сумме которых можно было бы определить что там лежит, как пример можно рассмотреть PHP JSON CONSTANT https://wwwphp
Установил google/cloud-vision через композер Устанавливаю переменную окружения с путем до файла с ключем, выполняю код из примера: