1
我是iPhone應用程序開發的初學者。我正在開發一個應用程序,它使用從RedPark獲得的RS232電纜與外部硬件進行通信。我自己寫了最多的代碼,但我仍然對幾件事情感到困惑。在NSObject中調用方法
我想在我的應用程序中有幾個視圖,每個視圖都有一個按鈕,當按下按鈕時,它向硬件發送不同的命令。所以我創建了一個NSObject來照顧發送部分。我的問題是如何正確調用該NSObject的發送方法。 Communication.h
@interface Communication : NSObject<RscMgrDelegate>
{
RscMgr * rscMgr;
}
@property (nonatomic,retain)RscMgr *rscMgr;
- (void)sendRequest;
@end
Communication.m
@synthesize rscMgr=_rscMgr;
- (void)sendRequest{
if (!_rscMgr) {
rscMgr = [[RscMgr alloc]init];
[rscMgr setDelegate:self];
}
UInt8 sendData[4]={0x8E,0x8E,0x05,0x80};
[rscMgr write:sendData Length:4];
NSLog(@"sending request");
}
順便說一句,RscMgr是由使用它們的庫RedPark提供一個NSObject的。 Singletest.m
- (Communication *)communication{
if(!_communication){
_communication=[[Communication alloc]init];
}
return _communication;
}
- (IBAction)sendData:(id)sender{
[self.communication sendRequest];
NSLog(@"Send Data");
}
現在會發生什麼事是我第一次按下按鈕,它併發送一個命令,而不是事後。我想我只是犯了一個愚蠢的錯誤,因爲我還在學習它。請告訴我。
謝謝。
我提供了更多的代碼來解釋我的問題。你能舉個單身課的例子嗎?謝謝。 – user1491987 2012-07-05 21:56:51
是的,今天晚上我會舉一個例子 - 現在仍在辦公室:-) – Joe 2012-07-05 22:08:13
非常感謝。順便說一句,你能告訴我,如果我在我的代碼中做錯了什麼嗎? – user1491987 2012-07-05 22:45:26