существует ли способ выполнить UIModalTransitionStyleCoverHORIZONTAL (не FlipHorizontal)?

Реалистично, JavaScript является единственным языком, который любые браузеры будут использовать в течение долгого времени, поэтому в то время как было бы очень хорошо использовать другие языки, я не вижу, что он происходит.

Это "стандартизировало VM", Вы говорите, было бы очень большим и должен будет быть принят всеми главными браузерами, и большинство сайтов только продолжило бы использовать JavaScript так или иначе, так как это больше подходит для веб-сайтов, чем много других браузеров.

необходимо было бы поиграть в песочнице каждый язык программирования в этом VM и уменьшить сумму доступа, который каждый язык имеет к системе, требуя большого количества изменений на языках и удалении или переопределении многих функций. Принимая во внимание, что JavaScript уже имеет это в виду и делал в течение долгого времени.

6
задан user141146 9 December 2009 в 06:54
поделиться

1 ответ

Вы можете сделать это, добавив представление как подпредставление, но установив его преобразование таким образом, чтобы оно располагалось за пределами экрана, по крайней мере, на ширину экрана в вашем случае. Затем запустите блок анимации, который включает сброс преобразования в единицу. После завершения анимации вы можете выполнять другие действия, такие как замена представления, которое сейчас скрыто.

Вот фрагмент:

[[outgoingView superview] insertSubview:incomingView aboveSubview:outgoingView];
incomingView.transform = [self affineTransformForTransationInDirection:BTRightDirection];

// Set up and start the animation
[UIView beginAnimations:@"cover" context:NULL];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
[UIView setAnimationDuration:BTSCREEN_ANIMATION_TIME];
[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:@selector(coverIncomingViewConclusion:finished:context:)];
incomingView.transform = CGAffineTransformIdentity;
self.outgoingView = outgoingView;   // Remember the outgoing view
[UIView commitAnimations];

Метод affineTransformForTransationInDirection: является помощником, который знает ширину и высоту экрана и возвращает преобразование, соответствующее направлению. Это делается для движения слева:

CGAffineTransformMakeTranslation(-FHScreenWidth(), 0.0);
4
ответ дан 17 December 2019 в 07:05
поделиться