Nano Hash - криптовалюты, майнинг, программирование

Переход между представлениями, как если бы одно было модальным

У меня есть экран входа в систему, который я хочу скрыть, например:

[self dismissModalViewControllerAnimated:true];

Но проблема в том, что мне нужно отобразить это так:

-(void)viewDidAppear:(BOOL)animated {
    [self presentModalViewController:loginScreen animated:false];
}

Это означает, что я буду мигать текущим экраном, прежде чем появится экран входа в систему.

Итак, я ищу способ мгновенного отображения экрана входа в систему и перехода на главный экран с той же анимацией, что и dissmissModalViewControllerAnimated:true.

24.10.2012

Ответы:


1

Вы должны иметь возможность просто отключить анимацию, чтобы она была мгновенной?

[self presentModalViewController:loginScreen animated:NO];

Сделайте это в viewWillAppear, если он все еще кратковременно мигает.

24.10.2012
  • ОП уже делает первое дело. Итак, ваш ответ: «Сделайте это в представленииWillAppear». 24.10.2012
  • Извините, анимированная часть: правда была опечаткой. Но я не могу отобразить его в представленииWillAppear из-за этого предупреждения: «Предупреждение: попытка представить ‹LoginViewController: 0x1cdc4390› на ‹MainViewController: 0x1cdb5220›, представление которого не находится в иерархии окон!» 24.10.2012
  • И не потому, что он дает мне предупреждение, он также не показывает мне экран входа в систему ;-) 24.10.2012
  • Можете ли вы попробовать представить его после задержки, чтобы он выполнялся в следующем цикле пользовательского интерфейса основного потока — переместите строку presentModal в новый метод, а затем вызовите: [self PerformSelector:@selector(presentModalMethod) withObject:nil afterDelay:0.0f ]; 24.10.2012

  • 2

    Что я сделал (возможно, не лучшее решение):

    - (void)viewDidLoad
    {
        // Initial set to hidden for avoiding a flickering UI
        self.view.hidden=YES;
    }
    -(void)viewWillAppear:(BOOL)animated
    {
        [NSTimer scheduledTimerWithTimeInterval:0 block:^{
            [self presentModalViewController:self.loginViewController animated:NO];
        } repeats:false];
    
    }
    

    И непосредственно перед отправкой ModalViewController вы устанавливаете self.view.hidden=NO. См. https://github.com/jivadevoe/NSTimer-Blocks для NSTimer, использующего блоки

    04.01.2013
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

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

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

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

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..