В классеremoveFromSuperview не работает должным образом
@interface StartScene : UIView
Я называю экземпляр
@interface HelpView : UIView {
GameOverMenu* gorm;
PlayScene* tView;
}
и использовать addSubview
. Я также получил огромный код здесь
-(void) removemyself {
[tView removeFromSuperview];
[gorm removeFromSuperview];
[self removeFromSuperview];
}
-(void)restartPlay {
[tView removeFromSuperview];
[self playSceneDidLoad];
}
-(void)gameOverDidLoad {
[tView removeFromSuperview];
gorm = [[GameOverMenu alloc]initWithFrame:CGRectMake(0, 0, 320, 520)];
gorm.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"backGround.jpg"]];
[gorm checkScore:Scores];
[self addSubview:gorm];
}
-(void)playSceneDidLoad {
[gorm removeFromSuperview];
tView = [[PlayScene alloc]initWithFrame:CGRectMake(0, 0, 320, 520)];
tView.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"backGround.jpg"]];
[self addSubview:tView];
[tView ooneFingerTwoTaps];
}
И два суб классы HelpView
:
@interface PlayScene : HelpView
@interface GameOverMenu : HelpView <UITextFieldDelegate>
В StartScene
когда я нажимаю на кнопку, экземпляр HelpView
создан и в методе инициализации playSceneDidLoad
называется.
Внутри PlayScene
есть кнопка перезапуска, которая вызывает метод restartPlay
. Когда игра проигрывается, вызывается метод gameOverDidLoad
.
И в обоих PlayScene
и GameOverMenu
есть кнопка выхода, которая вызывает метод removemyself
, который должен вернуть игрока в главное меню.
На первый взгляд он должен работать нормально, но если я нажму кнопку повторного запуска несколько раз и попытаюсь нажать кнопку «Выход», происходит, что просмотры не были удалены из супервизора, одно нажатие на кнопку выхода только теперь удаляет их один одним. И мы остановились на HelpView, она не устранила себя (даже если я пытаюсь вызвать [super removeFromSuperview];
где-нибудь.
мне нужно правильно удалить взгляды во времени и, чтобы добраться до главного меню (StartScene), когда бросить нажимается Я не думаю, что многие взгляды, окружающие друг друга, являются хорошим вариантом. В чем проблема?