2010-01-12 62 views
1

我在工程學校學到的一件事情是始終對輸入進行強烈驗證。我認爲使用iPhone SDK可以創建聲音和震動選項是非常棒的。我想把這兩個都放到我的Alert View中,它顯示了用戶沒有正確填寫字段的時間。試圖將振動和聲音添加到我的警報視圖

但是,我收到了很多錯誤。無法將振動和聲音選項置於警報視圖中嗎?這裏是我用下面我把所有上面的代碼中

- (void)textFieldDidEndEditing:(UITextField *)textField 

方法的代碼,

 //create vibrate 
     AudioServicesPlaySystemSound(kSystemSoundID_Vibrate); 

     //play sound 
    SystemSoundID pmph; 
    id sndpath = [[NSBundle mainBundle] 
        pathForResource:@"mySound" 
        ofType:@"wav" 
        inDirectory:@"/"]; 
    CFURLRef baseURL = (CFURLRef) [[NSURL alloc] initFileURLWithPath:sndpath]; 
    AudioServicesCreateSystemSoundID (baseURL, &pmph); 
    AudioServicesPlaySystemSound(pmph); 
    [baseURL release]; 

     //show alert view 
    UIAlertView *alert = [[UIAlertView alloc] 
          initWithTitle:@"Age Error" 
          message:@"Your age must be at least 40 years old and less than 100 years old" 
          delegate:nil 
          cancelButtonTitle:@"OK" 
          otherButtonTitles:nil]; 
    [alert show]; 
    [alert release]; 

這是我得到的錯誤,當我嘗試運行它 http://screencast.com/t/Nzc5NDdhMmI

任何幫助將不勝感激。不知道我做錯了什麼,因爲我直接從其他來源在線粘貼此代碼。

回答

4

我從來沒有使用聲音服務,但它看起來像你需要導入AudioToolbox框架。

#import <AudioToolbox/AudioToolbox.h> 
+0

啊是的,你是絕對正確的。我沒有包含AudioToolbox框架。但是,現在我正在使用正確的代碼和框架,但它只是停止並且不會產生我的聲音。這是一個視頻(http://screencast.com/t/ZmM3MGRm),這裏是控制檯錯誤(http://screencast.com/t/YzFjNzE4)的鏡頭。 – HollerTrain 2010-01-12 14:57:49

+0

嘿修好了。 1.本來沒有導入框架,2.文件本身搞砸了。感謝coneybeare在那一個! – HollerTrain 2010-01-12 16:55:51