Iphone 从另一个类调用方法

Iphone 从另一个类调用方法,iphone,objective-c,class,object,methods,Iphone,Objective C,Class,Object,Methods,首先,我想为我的英语道歉:) 我有FirstViewController,它包含scrollView。这是启用了分页的scrolView,有2个页面和2个不同的视图控制器。通过触摸按钮,从其中一个视图控制器中,第三个视图控制器显示为模态视图。我在FirstViewController中调用了一个方法,该方法必须禁用滚动并隐藏scrollView中未包含的两个标签。 方法正在执行,但UI未更改,滚动仍处于启用状态,标签仍可见 下面是一段代码: 这是FirstViewController.h的一部分

首先,我想为我的英语道歉:)

我有FirstViewController,它包含scrollView。这是启用了分页的scrolView,有2个页面和2个不同的视图控制器。通过触摸按钮,从其中一个视图控制器中,第三个视图控制器显示为模态视图。我在FirstViewController中调用了一个方法,该方法必须禁用滚动并隐藏scrollView中未包含的两个标签。 方法正在执行,但UI未更改,滚动仍处于启用状态,标签仍可见

下面是一段代码:

这是FirstViewController.h的一部分(不是全部代码):

因此,我从scrollView中包含的一个视图控制器调用
prepareToModal

以前:

#import "FirstViewController.h"
下一步:

就这些。我在PrepareTomodel中设置了一个断点,它停止了执行。方法被调用,但屏幕上没有任何更改

我做错了什么? 如何正确地做到这一点

更新

我解决了这个问题

当我呈现这个模态视图时,我写道:

ThirdViewController *tvc = [[ThirdViewControler alloc] init];
tvc.delegate  = self;

UINavigationController *nc = [[UINavigationController alloc] initWithRootViewController:tvc];

[self presentModalViewController:nc animated:YES];

[tvc release];
[nc release];
现在,代替了
[自呈现ModalviewController:nc动画:是]我写这个:

[[[[UIApplication sharedApplication].windows objectAtIndex:0] rootViewController] presentModalViewController:nc animated:YES];
而且它工作得很好,我不需要方法
-(void)prepareTomodel


非常感谢:)

请确保您已在Interface Builder中连接了您的IBoutlet。

在该示例中,您实际上没有使用VC进行任何操作,因此它不可能显示在屏幕上!?!您只需创建一个新实例,调用prepare modal方法并释放它……如果您已经有一个FirstViewController实例(显示滚动视图和标签的实例),那么您需要在该实例上调用prepare方法,而不是在新实例上。我看不到足够多的代码来提供详细信息。。。。但是,如果您使用的是标准设置,那么应用程序中的委托就是您的FirstViewController实例所在的位置。。。。
FirstViewController *vc = [[FirstViewController alloc] init];
[vc prepareToModal];
[vc release];
ThirdViewController *tvc = [[ThirdViewControler alloc] init];
tvc.delegate  = self;

UINavigationController *nc = [[UINavigationController alloc] initWithRootViewController:tvc];

[self presentModalViewController:nc animated:YES];

[tvc release];
[nc release];
[[[[UIApplication sharedApplication].windows objectAtIndex:0] rootViewController] presentModalViewController:nc animated:YES];