我有控制這樣的事情在其中創建與性能控制
#import <Foundation/Foundation.h>
#import "AQLevelMeter.h"
#import "AQPlayer.h"
#import "AQRecorder.h"
@interface SpeakHereController : NSObject {
IBOutlet UIBarButtonItem* btn_record;
IBOutlet UIBarButtonItem* btn_play;
IBOutlet UILabel* fileDescription;
IBOutlet AQLevelMeter* lvlMeter_in;
AQPlayer* player;
AQRecorder* recorder;
BOOL playbackWasInterrupted;
BOOL playbackWasPaused;
}
@property (nonatomic, retain) UIBarButtonItem *btn_record;
@property (nonatomic, retain) UIBarButtonItem *btn_play;
@property (nonatomic, retain) UILabel *fileDescription;
@property (nonatomic, retain) AQLevelMeter *lvlMeter_in;
@property (readonly) AQPlayer *player;
@property (readonly) AQRecorder *recorder;
@property BOOL playbackWasInterrupted;
@property BOOL isReport;
@property CFStringRef recordFilePath;
- (IBAction)record: (id) sender;
- (IBAction)play: (id) sender;
-(void) InitializeThePlayer;
@end
我們可以看到我增加了許多性能如
@property BOOL isReport;
@property CFStringRef recordFilePath;
然後,我創建的UIView包含該控件
#import <UIKit/UIKit.h>
@class SpeakHereController;
@interface SpeakHereViewController : UIViewController {
IBOutlet SpeakHereController *controller;
}
現在我想訪問控制對象的屬性,所以我說
- (void)viewWillAppear:(BOOL)animated {
[self ReportDirectory];
[controller setIsReport:self.iSReport ];
//controller.isReport = self.iSReport ;
[controller setRecordFilePath:(CFStringRef) self.DICOMpath];
//controller.recordFilePath = ;
}
的問題是,在線路
[controller setIsReport:self.iSReport ];
[controller setRecordFilePath:(CFStringRef) self.DICOMpath];
有警告說,
warning: no '-setIsReport:' method found
我做
@synthesize isReport;
@synthesize recordFilePath;
另外,如果我換成@class SpeakHereController;通過#import「SpeakHereController.h」它引發了很多錯誤,U可以從蘋果下載示例代碼
如果我說controller.isReport = self.iSReport;它提升爲成員的isReport「錯誤的請求的東西不是一個結構或聯合
我的問題是如何調用的屬性在這種控制中,我失去的東西
問候
我試過
我使用@class SpeakHereController;是否足夠 – AMH 2012-02-20 08:13:55
我更新了我的代碼,對不便造成的不便 – AMH 2012-02-20 08:20:30
不,@class行可以防止.h文件中的錯誤。你有沒有試過我建議的?讓我們知道它是否仍然無效。 – 2012-02-20 08:25:25