Повернуть андроид рисовать из XML без резки - PullRequest
0 голосов
/ 16 сентября 2018

Я должен сделать это в xml элемента представления рециркулятора (я использую привязку данных и шаблон держателя). Основываясь на значении переменной, связанной с представлением, мне нужно повернуть рисованный объект и установить его как src для ImageView.

Я проверил много вариантов в Интернете, но не нашел ни одного, вращая исходную отрисовку в формате XML 45 degrees срезов некоторых частей фигуры, которая представляет собой изогнутый прямоугольник. В результате получается форма, которая не соответствует требованиям.

Мне нужны предложения о том, как сделать это изнутри XML или адаптера, не переписывая его для использования getView.

Ответы [ 2 ]

0 голосов
/ 28 сентября 2018

Решение, которое я в конечном итоге использовал, заключалось в создании четырех различных векторных переменных на основе оригинала с включенной информацией о повороте.Затем я использовал переменную, привязанную к представлению, для хранения данных, определяющих вектор, который можно отобразить.Это решение не подходит для случаев, когда необходимо большое или неизвестное количество возможных поворотов или если углы рассчитываются во время выполнения.Однако я не видел способа сделать это из xml, поэтому вам все еще нужно сделать это из кода java / kotlin

0 голосов
/ 21 сентября 2018

Hello @ staa99, попробуйте следующий код, может он вам поможет.

ImageView imageView = findViewById(R.id.imageView);
RotateAnimation anim = new RotateAnimation(0, 45,
                Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF,0.5f);

anim.setInterpolator(new LinearInterpolator());
anim.setDuration(1000);
anim.setFillEnabled(true);
anim.setFillAfter(true);
imageView.startAnimation(anim);
...