iphone - 从 appdelegate 调用 viewcontroller 中的函数

标签 iphone objective-c ios

我想从我的 appDelegate 调用 viewController 中的函数,但使用以下代码,它不会被调用。我做错了什么?

AppDelegate.h:

#import <UIKit/UIKit.h>
#import "DetailsToTransfer.h"

@class AccountDetailTransferViewController;

@interface AccountDetailTransferAppDelegate : NSObject <UIApplicationDelegate> {

    DetailsToTransfer *objDetailsToTransfer;
}

@property (nonatomic, retain) DetailsToTransfer *objDetailsToTransfer;
@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet AccountDetailTransferViewController *viewController;

-(void)sendToTransferScreen:(NSArray *)detailsArray;

@end

AppDelegate.m:

....
-(void)sendToTransferScreen:(NSArray *)detailsArray {


    [objDetailsToTransfer setLabels:detailsArray];

    objDetailsToTransfer = [[DetailsToTransfer alloc]initWithNibName:@"DetailsToTransfer" bundle:nil];

    [self.window addSubview:objDetailsToTransfer.view];

}

DetailsToTransfer.h:

#import <UIKit/UIKit.h>

@interface DetailsToTransfer : UIViewController {
    NSArray *accountDetailsArray;
    UILabel *nameLabel;
    UILabel *accountLabel;
    IBOutlet UIButton *btnTransfer;
    IBOutlet UIButton *btnBack;
}

@property (nonatomic, retain) NSArray *accountDetailsArray;
@property (nonatomic, retain) IBOutlet UILabel *nameLabel;
@property (nonatomic, retain) IBOutlet UILabel *accountLabel;

-(IBAction)sendDetails;
-(IBAction)goBack;
-(void)setLabels:(NSArray *)array;

@end

DetailsToTransfer.m

....
-(void)setLabels:(NSArray *)array {

    NSLog(@"Setting Labels");

    self.nameLabel.text = [array objectAtIndex:0];
    self.accountLabel.text = [array objectAtIndex:1];
}
....

我想补充一点,所有属性都已合成,并且我正在正确调用 appDelegate 中的方法(我使用 NSLogs 检查)

最佳答案

在 AppDelegate.m 中:

看起来好像您在创建对象之前调用对象的方法。在你分配/初始化你的对象之前,不会有标签来设置文本。

关于iphone - 从 appdelegate 调用 viewcontroller 中的函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7691631/

相关文章:

iphone - 为什么此代码会导致 "EXC_BAD_INSTRUCTION"?

iphone - 导航栏中的 iOS UIButton 在执行变换动画后消失

ios - 按下项目按钮时让 native "share sheet"拉起

ios - 在 iOS 中针对不同构建发行版管理 plist 的 url、设置、 key 的最佳实践?

iphone - iOS 5 中 UIImagePickerController 出现内存警告,但 ios 4.x 中没有

iphone - 使用参数 iphone/ipad 处理点击手势

ios - 在 SWIFT 倒计时中使用的访问字典

ios - 应用内购买消耗品自动恢复

ios - @encoding 类型 id 其中 id 实际上是任何对象

iphone - 对于新版本的应用程序提交,iPhone 5屏幕快照是否为必填项?