Ответ 1
self.gameButtonLabel.transform = CGAffineTransformMakeRotation(CGFloat(M_PI_2))
Следует изменить на
// Swift 3 - Rotate the current transform by 90 degrees.
self.gameButtonLabel.transform = self.gameButtonLabel.transform.rotated(by: CGFloat(M_PI_2))
// OR
// Swift 2.2+ - Pass the current transform into the method so it will rotate it an extra 90 degrees.
self.gameButtonLabel.transform = CGAffineTransformRotate(self.gameButtonLabel.transform, CGFloat(M_PI_2))
С помощью CGAffineTransformMake...
вы создаете совершенно новое преобразование и перезаписываете любое преобразование, которое уже было на кнопке. Так как вы хотите добавить 90 градусов к уже существующему преобразованию (которое может быть уже повернуто на 0, 90 и т.д.), Вам нужно добавить к текущему преобразованию. Вторая строка кода, которую я дал, сделает это.