2015-12-10 2 views
1

У меня есть родитель viewController с именем «CenterViewConroller» и Child viewController с именем «InventoryViewController». У меня есть UIButton в CenterViewController, когда я нажимаю кнопку childView, должен появляться в данном измерении, и когда я снова нажимаю на parentcontroller, детское представление должно исчезнуть.Удалить Контроллер Childview из родительского viewController в ios

Я добавляю вид ребенка на кнопку мыши, как:

InventoryViewController *invent = [[InventoryViewController alloc] initWithNibName:@"InventoryViewController" bundle:nil]; 
    // iRosaAppDelegate_iPhone *appDelegate = [UIApplication sharedApplication].delegate; 
    [invent.view setFrame:CGRectMake(400,100,320,200)]; 
    [self addChildViewController:invent]; 
    [self.view addSubview:invent.view]; 
    [invent didMoveToParentViewController:self]; 

Как удалить ChildView на одной кнопке мыши?

ответ

0

В режиме просмотраDidLoad мы можем вызвать ChildViewController и сделать вид скрытым, а при нажатии кнопки мы можем переключить скрытое свойство следующим образом.

// В VIEWDIDLOAD invent = [[InventoryViewController alloc] initWithNibName:@"InventoryViewController" bundle:nil]; [invent.view setFrame:CGRectMake(400,100,320,200)]; [self.view addSubview:invent.view]; invent.view.hidden = true;

// КНОПКА НАЖМИТЕ Func

if (self.invent.view.hidden == true) { [self.invent.view setHidden:NO]; } else { [self.invent.view setHidden:YES]; }

1

Шаг 1.

В CenterViewController.h файл создать объект для класса InventoryViewController

InventoryViewController * invent;

Шаг 2. В CenterViewController.m файл

Создать следующий метод

- (Недействительными) addInventoryViewController

{

invent = [[InventoryViewController alloc]  
    initWithNibName:@"InventoryViewController" bundle:nil]; 

[invent.view setFrame:CGRectMake(400,100,320,200)]; 
[self addChildViewController:invent]; 
[self.view addSubview:invent.view]; 
[invent didMoveToParentViewController:self]; 

}

Шаг 3. На вас кнопка метод действия нажмите

- (IBAction) onButtonClick: (идентификатор) отправителя

{

если (! Выдумывать = ноль) {

[invent.view removeFromSuperview]; 
invent = nil; 

}

прочее

{

[self addInventoryViewController]; 

}

}