Анимация UIView по сравнению с CALayers

Почему Вы делитесь на 5 000? Просто установите Минимальные и Максимальные значения TrackBar между 0 и 100 и затем разделите Значение на 100 для процента Непрозрачности. Минимальные 20 примеров ниже препятствуют тому, чтобы форма стала абсолютно невидимой:

private void Form1_Load(object sender, System.EventArgs e)
{
    TrackBar1.Minimum = 20;
    TrackBar1.Maximum = 100;

    TrackBar1.LargeChange = 10;
    TrackBar1.SmallChange = 1;
    TrackBar1.TickFrequency = 5;
}

private void TrackBar1_Scroll(object sender, System.EventArgs e)
{
    this.Opacity = TrackBar1.Value / 100;
}
75
задан Suhaib 30 August 2017 в 07:03
поделиться

5 ответов

Используйте виды для управления и слои для приятного глазу. Слои не получают событий, поэтому в таких случаях проще использовать представление, но когда вы хотите анимировать спрайт или фон и т. Д., Слои имеют смысл. События проходят прямо через слои в резервное представление, поэтому вы можете иметь довольно наглядное представление, не испортив события. Попробуйте наложить представление, которое вы используете только для визуального представления, и вам придется самостоятельно передавать события касания в базовое представление.

55
ответ дан 24 November 2019 в 11:41
поделиться

Преобразования UIView только двухмерные и ограничены этим, преобразования LAyer могут быть трехмерными, и вы должны использовать их, если хотите делать трехмерные вещи, анимация UIView будет работать, если вы измените преобразование UIView или преобразование CALayer. Таким образом, на базовом уровне вы можете делать гораздо больше манипуляций, когда работаете со слоем, а не с представлением.

9
ответ дан 24 November 2019 в 11:41
поделиться

За последний год я сделал кучу приложений. Вот мое практическое правило:

  1. Используйте UIView, пока он не сделает то, что вы хотите.
  2. Затем перейдите к CoreAnimation. Но прежде чем вы углубитесь в это слишком много ...
  3. Если вы пишете больше, чем несколько анимаций, используйте Cocos2D.
21
ответ дан 24 November 2019 в 11:41
поделиться

UIView всегда отображается в CALayer . Когда вы используете методы UIView для анимации представления, вы эффективно манипулируете базовым CALayer .

Если вам нужно делать простые вещи, используйте UIView методы. Для более сложных ситуаций или если вам нужны слои, не связанные с каким-либо видом, используйте CALayers .

25
ответ дан 24 November 2019 в 11:41
поделиться

Я не уверен, что неправильно понимаю ответ Криса на вопрос «Что в Cocos2D лучше? У вас нет других проблем, касающихся обработки событий касания и многих других вещей, которые отсутствуют в openGL?» ES? "

Похоже, ответ предполагает, что Cocos2D не основан на платформе OpenGL ES, хотя на самом деле это так. Хотя это отличный движок для 2D-игр, он действительно реализует OpenGL для большей части рендеринга - прикрепленный к библиотеке физики, он предоставляет множество очень интересных возможностей для анимации - и Крис прав - это действительно намного меньше кода.

2
ответ дан 24 November 2019 в 11:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: