Подтвердить что ты не робот

Отправлять subview назад

Я пытаюсь имитировать боковое меню facebook ios и работать с ним, но проблема в том, что я не могу отправить sidemenu на спину, как обсуждалось в другом вопросе о SO iphone facebook side menu с использованием объектива c. Я не использую предложенную библиотеку, но вместо этого использую предложенный код. У меня

- (void)viewDidLoad
{
    NSLog(@"View Did Load is running");
    activitySpinner = [[UIActivityIndicatorView alloc] initWithActivityIndicatorStyle:UIActivityIndicatorViewStyleGray];
    activitySpinner.frame = CGRectMake(0.0, 0.0, 40.0, 40.0);
    activitySpinner.center = self.view.center;
    [self.view addSubview:activitySpinner];

    SideMenuView *myDelegate = [[SideMenuView alloc] init];
    [self setSideMenuDelegate:myDelegate];
    //set the delegate currentViewController property so that we can add a subview to this View. 
    [sideMenuDelegate setCurrentViewController:self];

    //sideMenu = [[SideMenuView alloc] initWithNibName:@"SideMenuView" bundle:nil];
    [self.view addSubview:myDelegate.view];
    [self.view sendSubviewToBack:myDelegate.view];

    [super viewDidLoad];
    self.searchDisplayController.searchBar.scopeButtonTitles = nil;

    [self fetchCustomers];
    // Do any additional setup after loading the view, typically from a nib.
}

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

Может кто-нибудь помочь мне получить вид myDelegate на спину?

4b9b3361

Ответ 1

Я не совсем уверен, чего вы пытаетесь достичь, поэтому я должен угадать. Похоже, вы хотите скрыть myDelegate.view за self.view. Это не сработает.

sendSubviewToBack: отправляет subview в обратную сторону иерархии представления отправителя, в вашем случае self.view. Он никогда не отправит подвью под его наблюдением.

Вместо этого вы можете добавить myDelegate.view в качестве подзаголовка в self.view superview и поместить его за self.view:

[[self.view superview] insertSubview:myDelegate.view belowSubview:self.view];

Ответ 2

Я решил просто пойти с https://github.com/Inferis/ViewDeck и позволить этому управлять представлениями.