2015-07-29 4 views
-1

У меня есть код для перемещения моей кнопки с помощью ее тега.Xcode 6 не может переместить UIButton с Autolayout на

- (void) moveButtonWithTag:(int)tag :(int)x :(int)y{ 
    UIButton *button = (UIButton *)[self.view viewWithTag:tag]; 
    CGRect btFrame = button.frame; 
    btFrame.origin.x = x; 
    btFrame.origin.y = y; 
    button.autoresizingMask = UIViewAutoresizingNone; 
    button.frame = btFrame; 
} 

Это не делает ничего, я попытался пошевелить кнопку, используя один и тот же код, но вместо тегов я перетащил кнопку в .h файле, это тоже не сработало. Кто-нибудь может мне помочь? Я использую Xcode 6.4 iOS 8.4 Autolayout ON Sizeclasses ON. На любой из кнопок на раскадровке нет ограничений, иначе код будет создан иным образом. Устройство, на котором я тестирую, - iOS Simulator iPhone 6 (4.7 дюйма).

+0

Является ли 'кнопка' нил? Докажите, что это не так. Это первый шаг ... – matt

ответ

0
  1. Если вы используете autolayout, лучше всего использовать изменение NSLayoutConstraint, которое вы создали (IB). https://stackoverflow.com/a/27792550/846780
  2. Где вы звонить moveButtonWithTag:x:y? Может быть, вы вызываете это, прежде чем все contraning будут «применяться». Если вы хотите использовать этот «грязный» подход, попробуйте изменить кадры на viewDidLayoutSubviews.
  3. Проверьте, нет ли кнопки
Смежные вопросы