Положение iOS / Swift всех объектов в viewController сбрасывается после .setBackgroundImage - PullRequest
0 голосов
/ 23 мая 2018

Как описано в заголовке, по какой-то причине позиция всех перемещенных объектов сбрасывается в исходное положение после вызова .setBackgroundImage для некоторых UIButton.

Исходная позиция пользовательского интерфейсаэлементы устанавливаются через StoryBoard, после этого я меняю положение некоторых элементов с помощью PanGestureRecognizer (например, меню перемещается вверх)

Просто так:

@IBAction func handlePan(recognizer:UIPanGestureRecognizer) {
let translation = recognizer.translation(in: self.view)
if let view = recognizer.view {
view.center = CGPoint(x:view.center.x + translation.x,
                        y:view.center.y + translation.y)
}
recognizer.setTranslation(CGPoint.zero, in: self.view)
}

После этого у меня есть кнопка сфоновое изображение, которое изменяется, когда пользователь выбирает смену темы, .setBackgroundImage предварительно формируется на этой кнопке UIB следующим образом:

button.setBackgroundImage(image, for: UIControlState.normal)

После изменения изображения на кнопке положение переведенного объекта (меню, которое перемещается вверх)возвращается в исходное положение, установленное через раскадровку. Я хочу, чтобы это меню оставалось открытым даже после того, как изображение на какой-либо не связанной кнопке поменялось.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...