我正在编写一个包含2 .h和2 .m文件的程序,它应该将PageControl的值从一个传递给另一个。但我只是通过我0.不知道怎么做,所以我可以读取正确的值?
这是som示例代码:
// SubViewViewController.h
#import <UIKit/UIKit.h>
@class ExSubViewViewController;
@interface SubViewViewController : UIViewController <UIScrollViewDelegate> {
.....
IBOutlet UIScrollView *scrollView;
IBOutlet UIPageControl *pageControl;
ExSubViewViewController *exSubViewViewController;
}
@property (nonatomic, retain) ExSubViewViewController *exSubViewViewController;
@property (nonatomic, retain) UIScrollView *scrollView;
@property (nonatomic, retain) UIPageControl *pageControl;
.....
@end
// SubViewViewController.m
#import "ExSubViewViewController.h"
#import "SubViewViewController.h"
@implementation SubViewViewController;
@synthesize scrollView, pageControl, exSubViewViewController;
.....
pageControl.currentPage = page; //page is an integer
.....
@end
// ExSubViewViewController.h
#import <UIKit/UIKit.h>
@class SubViewViewController;
@interface ExSubViewViewController : UIViewController {
SubViewViewController *subViewViewController;
}
@property (nonatomic, retain) SubViewViewController *subViewViewController;
@end
// ExSubViewViewController.m
#import "ExSubViewViewController.h"
#import "SubViewViewController.h"
@implementation ExSubViewViewController;
@synthesize subViewViewController;
- (void)viewDidLoad {
int page = subViewViewController.pageControl.currentPage;
NSLog(@"Side: %d", page);
}
.....
@end
希望这是足够的代码,否则你可以再问一次。我遗漏了不重要的代码。 谢谢你的帮助。
答案 0 :(得分:0)
您在subViewViewController
初始化代码中的哪个位置设置了ExSubViewViewController
?你确定它已经在你使用它的时候初始化了吗?
编辑:应该初始化作为ExSubViewController成员的SubViewController指针(名为subViewViewController)。除非您这样做,否则此指针变量不会神奇地设置为正确的值,或者您将其设置为IBOutlet并在Interface Builder中正确连接。
编辑2:类成员是nil-initialized,仅此而已。是的,您可以将其设置为IBOutlet并在Interface Builder中正确连接。