来自其他视图控制器的隐藏按钮

时间:2015-07-27 06:58:01

标签: ios xcode

我尝试从第二个视图控制器隐藏第一个视图控制器中的两个按钮。虽然我尝试从第二视图控制器调用功能到第一,控制正确传递我有断点检查,但操作没有完成。我在第一个视图控制器上的代码

-(void)action
{
    if(btnAddFriends.hidden==YES)
    {
        btnAddFriends.hidden=NO;
    }
    else
    {
        btnAddFriends.hidden=YES;
    }
}

第二视图控制器

1stview *jsq = [[1stview alloc] init];
[jsq action];

3 个答案:

答案 0 :(得分:2)

我猜你正在创建一个新的控制器(alloc / init序列......),而不是使用现有的控制器:这也解释了为什么你可以调试它,即使它不起作用......

答案 1 :(得分:1)

因为您要为第一个视图控制器创建新对象。 这个方法没有调用以前的viewController,因为viewController的Object是不同的,这就是你的方法不调用的原因 我希望你明白 它可能对你有所帮助。

答案 2 :(得分:1)

如果要从2ndview调用1stview的方法,则应该引用现有的1stview而不是创建另一个新视图。

代码或多或少会像这样:

1.-在2ndview.h中创建一个属性:

@property(nonatomic, strong) 1stviewClass* 1stview;

2.-在1stview中,将self指定给在步骤1中创建的属性:

2ndview.1stview = self;

3.-在2ndview中,从1stview调用您需要的方法:

[1stview hideButtons];

您还可以创建协议以将消息从2ndview发送到1stview。

相关问题