Ios 场景中的UIPickerView
我想在游戏中设计一个关卡选择场景。我想要的是一个非常抽象的设计,它由一个UIPickerView组成,这个UI PickerView具有屏幕的宽度和大约200像素的高度 以下内容来自LevelSelect.m,它是SKScene的一个子类Ios 场景中的UIPickerView,ios,objective-c,sprite-kit,uipickerview,Ios,Objective C,Sprite Kit,Uipickerview,我想在游戏中设计一个关卡选择场景。我想要的是一个非常抽象的设计,它由一个UIPickerView组成,这个UI PickerView具有屏幕的宽度和大约200像素的高度 以下内容来自LevelSelect.m,它是SKScene的一个子类 -(id)initWithSize:(CGSize)size{ if (self = [super initWithSize:size]) { /* Setup your scene here */ self.backgroundColor
-(id)initWithSize:(CGSize)size{
if (self = [super initWithSize:size]) {
/* Setup your scene here */
self.backgroundColor = [SKColor whiteColor];
for (int i = 0; i < 10; i++) {
NSString* levelString = [NSString stringWithFormat:@"Level %i",i];
[levelData setObject:levelString atIndexedSubscript:i];
}
UIPickerView *levelPickerView = [[UIPickerView alloc] initWithFrame:CGRectMake(self.scene.size.width/2, self.scene.size.height/2, self.scene.size.width, 200)];
levelPickerView.dataSource = self;
levelPickerView.delegate = self;
levelPickerView.showsSelectionIndicator = YES;
[self addChild:levelPickerView];
}
return self;
}
我实现了UIPickerView数据源和委托方法。但是当我加载场景时,我得到以下错误
2014-07-23 22:32:41.222 Poppolo[13686:60b]-[UIPickerView setPaused:]:发送到实例0x17d90470的选择器无法识别
2014-07-23 22:32:41.225 Poppolo[13686:60b]*由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:'-[UIPickerView setPaused:::]:未识别的选择器发送到实例0x17d90470'
*第一次抛出调用堆栈:
0x2dd30f0b 0x384c7ce7 0x2dd34837 0x2dd33137 0x2dc82098 0x304618cb 0xe1f3d 0xe70fb 0x389b0d53 0x389b0d3f 0x389b36c3 0x2DCB681 0x2dcf9f4d 0x2dc64769 0x2DC64544B 0x32bd16d3 0x305c3891 0xee221 0x389c5ab7
libc++abi.dylib:以NSException类型的未捕获异常终止
提前感谢。您不能将UIView添加为子节点。请确保编译器会警告您这一点。不要忽视警告。Instaed将视图添加到skview实例中。我尝试了[self.view addSubview:levelPickerView]而不是将其作为子视图添加,但它现在是可见的。这是因为self.view在场景初始化期间为nil