Почему self.navigationItem.hidesBackButton не работает?

Комментарий Джеймса П. решил это для меня.

Использование SCNSceneRendererDelegate означает, что я могу запускать код несколько раз в каждом цикле рендеринга, чтобы проверить, прекратил ли узел движение.

Затем я столкнулся с этой проблемой SceneKit: isResting никогда не возвращает true . isResting всегда был ложным. Единственный способ получить то, что мне было нужно, это использовать Int(SCNNode.physicsBody?.velocity.z), и когда это ноль, мой узел полностью лежит на полу

.

7
задан matt b 16 April 2009 в 02:51
поделиться

5 ответов

Вы называете hidesBackButton = НЕ от потока? Все операции UI должны быть сделаны на основном потоке, иначе они не будут иметь никакого эффекта.

4
ответ дан 7 December 2019 в 01:26
поделиться

я не смог копировать Вашу проблему на своей машине. однако, я столкнулся с подобной проблемой с tableviews, даже когда я обновлял свой ui на основном потоке. но вызов setNeedsDisplay устранил ту проблему.

Можете Вы пробовать это и видеть, работает ли это:

[self.navigationController.navigationBar setNeedsDisplay];

Я предполагаю, что это должно работать, необходимо сделать то же, НО НА NAVIGATIONBAR вместо этого. сообщите мне, работало ли это - поскольку я не могу протестировать свое решение, потому что я никогда не получаю эту проблему :-)

2
ответ дан 7 December 2019 в 01:26
поделиться

Вы попытались вынудить представление обновиться путем вызова setNeedsDisplay? Возможно, ОС не берет изменения немедленно, и необходимо вызвать ее.

1
ответ дан 7 December 2019 в 01:26
поделиться

Имейте Вас, пытался использовать setHidesBackButton:animated: метод вместо этого? Возможно, это имеет немного отличающееся поведение.

1
ответ дан 7 December 2019 в 01:26
поделиться

В моем случае мне просто нужно было дать заголовок представлению, как в примере: self.navigationItem.title = @"Menu";

Marinus

1
ответ дан 7 December 2019 в 01:26
поделиться