У меня есть краткая информация об общей странице, которая включает в себя щелчок на кнопке совместного доступа, а модальный вид сверху - с некоторыми функциями общего доступа.Модальный вид Прозрачный фон - остановить скрытие нижнего слоя?
Мои проблемы в том, что я хотел бы, чтобы фон модального вида был полупрозрачным и, следовательно, отображал вид снизу. Я установил фоновые свойства модального слоя, и по мере того, как модальная фигура выглядит, слой внизу отображается ненадолго - и выглядит точно так, как мне нужно, - но как только завершение покрытия завершено, фоновый вид скрыт - есть ли какой-либо способ это?
(Использование IOS7, кстати)
Приветствиях
Update - @Tommaso Resti любезно помог мне попытаться выяснить этот вопрос из - объяснить, что я сделал до сих пор - моя главная раскадровка содержит несвязанный uiview с идентификатором «ShareScreenView» - который я бы хотел добавить к моему mainView как прозрачный модальный при нажатии на кнопку. Я связала кнопку как IBAction и добавил следующее к моему методу -
- (IBAction)shareBtn:(id)sender {
NSLog(@"clicked");
/* Create your view off the screen (bottom) */
/* NEW EDIT */
UIStoryboard *mainStoryboard = [UIStoryboard storyboardWithName:@"Main_iPhone"
bundle: nil];
UIViewController *myModalController = [mainStoryboard instantiateViewControllerWithIdentifier:@"ShareScreenView"];
[myModalController.view setFrame:CGRectMake(0, 568, 320, 568)];
// [myModalController.view setFrame: CGRectMake(0, [[UIScreen mainScreen].bounds.size.height], [[UIScreen mainScreen].bounds.size.width], [[UIScreen mainScreen].bounds.size.height])];
/* Animate it from the bottom */
[UIView animateWithDuration:.5 animations:^{
CGAffineTransform move = CGAffineTransformMakeTranslation(0, -[UIScreen mainScreen].bounds.size.height);
[UIView setAnimationCurve:UIViewAnimationCurveEaseIn];
myModalController.view.transform = move; /* UPDATED HERE */
NSLog(@"Atrying");
} completion:^(BOOL finished) {
NSLog(@"Adid try");
if(finished) {
NSLog(@"Animation completed");
}
}];
}
Но я получаю ошибку на линии -
[myModalController.view setFrame: CGRectMake (0, [[UIScreen В начало ] .bounds.size.height], [[UIScreen mainScreen] .bounds.size.width], [[UIScreen mainScreen] .bounds.size.height])];
, который просто заявляет «ожидаемый идентификатор» со стрелкой, указывающей на высоте (см скриншот ниже)
поэтому я попытался добавить свойства следующим образом -
[myModalController.view setFrame:CGRectMake(0, 568, 320, 568)];
сейчас ошибок нет - но ничего не происходит и ошибок нет.
прохладные веселит - я могу использовать этот метод с раскадровки? Я еще никогда не использовал Nibs! – Dancer
уверен!Использовать UIViewController * myModalController = [storyboard instantiateViewControllerWithIdentifier: @ "MyModalController"]; вместо UIViewController myModalController = [[UIViewController allor] initWithNibName: @ "MyModalController": [NSBundle mainBundle]]; –
классные приветствия - одна проблема - я получаю сообщение об ошибке 'свойство transform, не найденное на UIViewController в этой строке - myModalController.transform = move; – Dancer