Я реализую базовый спидометр, используя изображение и поворачивая его. Однако, когда я устанавливаю начальное вращение (примерно на 240 градусов, преобразованное в радианы), оно поворачивает изображение и делает его намного меньше, чем могло бы быть. Некоторые значения делают изображение полностью исчезающим. (как M_PI_4)
ползунок идет от 0-360 для тестирования.
следующий код вызывается для viewDidLoad и при изменении значения ползунка.
-(void) updatePointer
{
double progress = testSlider.value;
progress += pointerStart
CGAffineTransform rotate = CGAffineTransformMakeRotation((progress*M_PI)/180);
[pointerImageView setTransform:rotate];
}
РЕДАКТИРОВАТЬ: Вероятно, важно отметить, что, как только он будет установлен в первый раз, масштаб остается прежним. Итак, если бы я установил pointerStart на 240, он бы уменьшился, но перемещение ползунка не изменило бы масштаб (и повернуло бы его, как вы подозревали) , (сжимает это.)