2011-07-14 12 views
3

私は完全にUIPickerViewに固執しています。私はエラーを取得し続ける:UIPickerViewでのトラブル

GDB:受信信号: "SIGABRT"。

2011-07-14 13:35:19.132 MeldStad [677:207]によりキャッチされない例外 'NSInvalidArgumentException'、理由にアプリを終了*: ' - [UIViewのnumberOfComponentsInPickerView:]:認識されていないセレクタがインスタンス0xaac34c0に送ら'

私はインターネット上でいくつかの解決策を読んだことがありますが、それらのどれも私のために働いていませんでした。 私はPickerViewチュートリアルを2つ以上試しました。知っていることを知らない。ここで

はピッカー法の源である:

- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView 
{ 
    return 1; 
} 

- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component 
{ 
    return [pickerData count]; 
} 

- (NSString *)pickerView: 
(UIPickerView *)pickerView titleForRow: 
(NSInteger)row forComponent:(NSInteger)component 
{ 
    return [pickerData objectAtIndex:row]; 
} 
+0

デリゲートをどのように設定しましたか?また、これらのメソッドはどこに追加しましたか? –

+0

私は接続が今良いと思います。私は接続のためのこのチュートリアルに従った(ステップ6)。 http://www.roseindia.net/tutorial/iphone/examples/UIPickerView/UIPickerViewExample.htmlエラーはなくなりましたが、ボタンをクリックして選択した項目を取得しようとすると、何も戻ってこないのです。 NSInteger row = [singlePicker selectedRowInComponent:0]; \t NSString * selected = [pickerData objectAtIndex:row]; \t NSLog(@ "test:"、selected); – Th3noon

+0

'singlePicker'は' nil 'でなければなりません。つまり、IBでは接続されていません。それを確認します。 –

答えて

7

エラーはあなたがUIPickerDelegate方法

@interface YourViewController : UIViewController <UIPickerViewDelegate> 
を持っていないのUIViewにIBでセットアップあなたのUIPickerデリゲートをと言っています

または、代理人を間違ったファイルに割り当てました。 IB接続の設定を確認してください。データソースとデリゲートをFilesOwnerに設定する

+0

私は接続が今良いと思います。私はこのチュートリアルの接続(手順6)に従っています.http://www.roseindia.net/tutorial/iphone/examples/UIPickerView/UIPickerViewExample.htmlエラーはなくなりましたが、選択した項目をボタン、何も戻って来ない。 NSInteger row = [singlePicker selectedRowInComponent:0]; NSString * selected = [pickerData objectAtIndex:row]; NSLog(@ "test:"、selected); – Th3noon

+0

ああ、私はそれを固定、thnx :) – Th3noon