сбросить угол поворота вида в ноль - PullRequest
0 голосов
/ 12 марта 2019

Я могу повернуть UIView на 90 градусов, а также получить угол поворота.

Необходимо реализовать ---> сбросить значение угла поворота myView на 0, но позиция / направление просмотра не должна переходить к предыдущему значению вращения / позиции в пользовательском интерфейсе, а затем, если я вращаюсь, он должен начать вращаться с той же позиции / направления и его вращения Угол нужно начинать с 0. enter image description here

Я повернул изображение на 90 градусов, нажав на кнопку поворота, как показано ниже. enter image description here

Вот код реализации

    @IBOutlet weak var myView: UIView!
@IBAction func rotateBtn(_ sender: Any) {
    myView.transform = myView.transform.rotated(by: .pi/2)
    getRotateAngles()
}
func getRotateAngles() {
    let radians = atan2(myView.transform.b, myView.transform.a)
    var degrees = radians * 180 / .pi
    degrees.round()
    let realDegrees = degrees >= 0 ? abs(degrees) : 360 + degrees
    print("Degrees:: \(realDegrees)")
}
@IBAction func saveTapped(_ sender: Any) {
    myView.transform = .identity //need to implement--->reset myView rotation angle value to 0  but view position/direction should not go previous rotation value on UI and then if i rotate it has to start rotate from same position/direction and it's rotation angle need to start from 0.
}

Здесь я могу распечатать повернутые градусы в 0, 90, 180, 270, 0 .....

как я могу сбросить значение поворота просмотра на 0, когда нажата кнопка сохранения.

Переход к части пользовательского интерфейса, если представление повернуто на 90 градусов и нажато при сохранении, будет таким же на интерфейсе, но значение в градусах должно начинаться с 0.

если я сохраняю идентичность преобразования, myView меняет свою позицию в пользовательском интерфейсе, это проблема. я не хочу менять его позицию / позицию в пользовательском интерфейсе, но только градусы просмотра должны начинаться с 0 при сохранении.

ДЛЯ ПРИМЕРА: Я повернул вид, он дает градусы 0, 90, 180, 270, 0 ... Требование заключается в том, что я поворачиваю представление, которое выводит вывод 90. saveTapped, тогда myView должен находиться в той же позиции / в том же месте, без изменений в пользовательском интерфейсе. Теперь, когда я снова поворачиваюсь, он должен напечатать градусы 0, 90, 180, 270, 0 .... но в этом случае saveTapped и вид уже повернут на 90 градусов

Заранее спасибо.

...