Скрыть uiview, но не его subview? - PullRequest
1 голос
/ 11 января 2011

У меня есть приложение, в котором я добавляю ViewB как подпредставление для ViewA ... Но фон ViewB - это clearColor, а это значит, что я могу видеть ViewA через ViewB!Если я установлю viewA скрытым, ViewB тоже исчезнет!

Я делаю «переворот» между представлениями, поэтому я не могу просто удалить ViewA и затем добавить ViewB: - /

-У кого-нибудь есть представление о том, что я могу сделать?


Вот мой код:

[UIView beginAnimations:nil context:nil];
    [UIView setAnimationDuration:1.0];
    [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight
                           forView:mainTableView
                             cache:YES];
    [mainTableView addSubview:subTableView];
    [UIView commitAnimations];

Ответы [ 3 ]

1 голос
/ 11 января 2011

"Я делаю" флип-переход "между представлениями, поэтому я не могу просто удалить ViewA и затем добавить ViewB: - /" - на самом деле да, вы можете. В качестве первого шага вы должны добавить ViewA к родительскому представлению. Позже, когда вы захотите выполнить переворот, вы удалите ViewA, добавите ViewB в родительское представление и выполните перевернутый переход в родительском представлении.

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

1 голос
/ 10 августа 2011

Я бы порекомендовал вам не добавлять вид сзади как подпункт ViewB как подпредставление ViewA. Лучшим решением было бы хранить их отдельно ... Ранее упомянутый метод (transitionFromView: toView: duration: options: завершение :) является правильным методом для использования ... просто убедитесь, что у вас нет одного в качестве подпредставления другого ... вместо этого, если ViewA будет "видом сзади", просто сделайте это ...

[UIView transitionFromView: viewB toView: viewA опции: UIViewAnimationOptionTransitionFlipFromRight завершение: NULL];

UIViewAnimationOptionFlipFromRight - это всего лишь одна опция ... читайте документы, чтобы узнать больше ...

0 голосов
/ 11 января 2011

Ознакомьтесь с справкой для setAnimationTransition: forView: cache: - звучит так, как будто вы хотите изменить внешний вид представления во время перехода, переключаясь с одного вида на другой, оба вида видны во время анимации?Для этого в документах предлагается использовать контейнерное представление.Документы также рекомендуют в iOS 4.0 и более поздних версиях использовать анимацию на основе блоков.

Попробуйте использовать transitionFromView: toView: duration: параметры: завершение:

...