Доступ к родительскому представлению текущего представления - iOS

Когда я хочу получить доступ к родительскому UIView текущего UIView я объявляю объект родительского UIView в текущем UIView и UIView к нему доступ, назначая родительский объект UIView для свойства текущего объекта представления.

Есть ли способ избавиться от этого и напрямую вызвать методы или свойства родительского представления?

Я также попытался (parentView *) self.view.superview но не помогло.

Выдает ошибку при вызове функции для этого объекта как

[UIVIew unrecognized selector......

Ответ 1

Если вы вызываете это непосредственно из UIView (а не a UIViewController), оно должно быть self.superview вместо self.view.superview.

Ответ 2

@Naveed: это общий код, который вы можете использовать для любого вида, будь то родительский или дочерний, просто нажмите кнопку с названием кнопки, которую вы хотите нажать, и имя представления, на которое вы хотите пойти. Например, на задней кнопке нажмите u, чтобы перейти к представлению библиотеки, а затем напишите этот код -

-(IBAction)backButtonPressed:(id) sender
 {
        llibraryView *libraryview=[[libraryView alloc] initWithNibName:nil bundle:nil];
    libraryview.modalTransitionStyle=UIModalTransitionStyleCoverVertical;
    [self presentModalViewController:libraryview animated:YES]; 
    [libraryview release];
 }

Сообщите мне, разрешена ли проблема ур или нет.

Ответ 3

Я могу подумать, что вы хотите вызвать метод viewcontroller из своего представления, который вы добавили в представление viewcontroller.

Теперь у вас есть два варианта: вы устанавливаете свой контроллер представления делегатом представления, а затем вызываете свой метод viewcontroller с помощью подхода [delegate performSelector:].

Другим подходом является доступ к вашему представлению viewview, а затем его получение. Вы не можете сделать это напрямую, если бы вы могли сделать это, чтобы победить всю цель MVC.

Но, все же есть выход, здесь вы идете: -

Получить UIViewController из UIView?

Надеюсь, это поможет вам.