2013-08-07 4 views
0

У меня есть два вида на экране iPhone, один над другим (mediaControls выше deviceWebView). Когда я скрываю вид сверху, я хочу, чтобы снизу отображался весь экран, и когда я раскрываю вид сверху, я хочу, чтобы снизу было снова изменено изображение, чтобы оно было ниже верхнего вида. Это кажется очень простым, но у меня проблемы с этим. Я пробовал только скрывать представление, а также корректировать ограничения макета, как показано ниже.Измените размер, если другой скрыт.

Heres мой код:

-(void)hideVideoButtons{ 
    self.mediaControls.hidden = YES; 
    [self.view removeConstraint:self.deviceLayoutConstraint]; 
    [self.deviceWebView setNeedsDisplay]; 
} 
-(void)showVideoButtons{ 
    self.mediaControls.hidden=NO; 
    self.deviceLayoutConstraint = [NSLayoutConstraint constraintWithItem:self.deviceWebView attribute:NSLayoutAttributeTop relatedBy:NSLayoutRelationEqual toItem:self.mediaControls attribute:NSLayoutAttributeBottom multiplier:1 constant:0]; 
    [self.view addConstraint:self.deviceLayoutConstraint]; 

ответ

0

вы пробовали UIView animateWithDuration: анимации: метод? Вы можете анимировать UIView (ы) в любое место, которое хотите, вы можете изменить их размер и многое другое.

[UIView animateWithDuration:1.0 animations:^{ 
    // moving the device web view 
    self.deviceWebView.transform = CGAffineTransformMakeTranslation(xVar, yVar); 
    // moving the other view 
    otherView.transform = CGAffineTransformMakeTranslation(xVar, yVar); 
}]; 

xVar и yVar не являются переменными. Они просто показывают использование метода. Вы заменили бы их на x и y на экране, на котором вы хотите переместить x и y представления. Я не совсем уверен, что это то, что вы ищете, но, похоже, вы ищете способ оживить взгляды, поэтому вот предложение :)

Надеюсь, это поможет!

+0

Я смущаюсь использовать координаты x и y, потому что это не будет работать на экране любого размера (например, iPhone 4 и iPhone 5) – ARomano

Смежные вопросы