2010-11-21 12 views
0

2 .h ve 2 .m dosyalarına sahip bir program yazıyorum, bir PageControl değerini birinden diğerine iletmelidir. Ama ben sadece 0'ı geçiyorum. Bunu nasıl yapacağımı bilmiyorum, böylece doğru değeri okuyabileyim?Diğer .m dosyasına geçme değeri

// 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 

Umut bu yeterli kodudur illâ sadece tekrar sorabilirsiniz:

İşte som örnek kod verilmiştir. Önemsiz bir kod çıkardım. Yardım için teşekkürler.

+0

Bize kod göster –

cevap

0

subViewViewController'u ExSubViewViewController init kodunuzda nereye ayarladınız? Ve kullandığınız noktada zaten başlatılmış olduğundan emin misiniz?

Düzenleme: ExSubViewController üyesi olan SubViewController işaretçisi (subViewViewController adlı) başlatılmalıdır. Bu işaretçi değişkeni, siz yapmadıkça büyülü olarak doğru değere ayarlanmaz veya bir IBOutlet yapar ve bunu Arabirim Oluşturucu'ya uygun şekilde bağlar.

Düzenleme 2: sınıf üyeleri sıfır başlatıldı, başka bir şey değil. Ve evet, bunu bir IBOutlet haline getirebilir ve Interface Builder'da uygun şekilde bağlayabilirsiniz.

+0

Set subViewViewController ile ne demek istiyorsun? .H. Sınıfına sahibim ve onu .m – Bagger

+0

'da anladım, anladım. Ama sentez ettiğimde başlatılmadı mı? Yanılıyorsam düzelt beni, iPhone programında yeniyim. İmleci IB'de subView.xib'de pageControl'e bağlı mı? Yardım için teşekkürler. – Bagger

+0

Tamam, anlıyorum ki sınıf üyelerinin içinde bilgi yok. Şimdi SubViewViewController'dan değeri ona nasıl geçirebilirim? Bunların farklı görünümlere sahip olduğu söylenmelidir, bu yüzden Interface Builder'da bağlantı kuramadım ?! ya da sadece ben mi? Diyor ki: SubViewViewController * subViewViewController, IBOutlet SubViewViewController * subViewViewController olmalı? – Bagger