이것은 아마도 매우 기본적인 질문이라고 생각하지만 몇 시간 동안 검색하면 문제가있는 사람들을 찾을 수 있지만 찾은 해결책이 없습니다.UIPickerView ios 문제 - 인식 할 수없는 선택기
안드로이드와 블랙 베리 애플 리케이션을 작성했지만, 아이폰 개발에 젖어 먹고있는 중이므로 Objective-C는 자바의 전환점입니다.
[UIViewController에 numberOfComponentsInPickerView :] : 인식 할 수없는 선택기 인스턴스에 전송 0x4b4e0d0 2011-09- 나는 그것에 UIPickerView으로 화면을 열 때
모든먼저,이 오류 메시지가 09 15 : 57 : 19.619 TabBar의 [4945 : 207] 의한 캐치되지 않는 예외 'NSInvalidArgumentException'이유 응용 프로그램 종료 *이 -
H '[UIViewController에 numberOfComponentsInPickerView는 :] 미정 선택기 인스턴스 0x4b4e0d0 전송' 여기
#import <UIKit/UIKit.h>
@interface ThirdViewController : UIViewController <UIPickerViewDelegate, UIPickerViewDataSource>{
UILabel *setUnits;
UIPickerView *pickerView;
NSMutableArray *pickItems;
}
@property (retain, nonatomic) UIPickerView *pickerView;
@property (retain, nonatomic) NSMutableArray *pickItems;
@end
그리고 내 구현 파일입니다 : 조립식 내 헤더 파일 내가 체크 한
#import "ThirdViewController.h"
@implementation ThirdViewController
@synthesize pickerView;
@synthesize pickItems;
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
- (void)didReceiveMemoryWarning
{
// Releases the view if it doesn't have a superview.
[super didReceiveMemoryWarning];
// Release any cached data, images, etc that aren't in use.
}
#pragma mark - View lifecycle
/*
// Implement loadView to create a view hierarchy programmatically, without using a nib.
- (void)loadView
{
}
*/
// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
[super viewDidLoad];
pickItems = [[NSMutableArray alloc] init];
[pickItems addObject:@"Pounds"];
[pickItems addObject:@"Kilograms"];
}
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView {
return 1; //give components here
}
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent: (NSInteger)component {
return [pickItems count]; //give rows here
}
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component {
return [pickItems objectAtIndex:row]; // give titles
}
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component {
//Do the step here
}
- (void)dealloc {
[super dealloc];
}
@end
, 그리고 대리인과는 dataSource 모두 파일의 소유자에 연결되어 있습니다. 내가 놓친 게 있니?
감사합니다.
IB의 클래스를 ThirdViewController 클래스로 변경하고 해결했습니다. 감사! – coder