Iphone 在iOS中关闭UIPickerView

Iphone 在iOS中关闭UIPickerView,iphone,objective-c,Iphone,Objective C,我正试图通过敲打维吾尔布托人来驱逐维吾尔人。所以,我做了一个动作,在这个动作中我称之为[PickerView removeFromSuperview]。但是,它不起作用 ViewController.h #import <UIKit/UIKit.h> @interface ViewController : UIViewController< UIPickerViewDelegate,UIPickerViewDataSource> - (IBAction)dissmissP

我正试图通过敲打维吾尔布托人来驱逐维吾尔人。所以,我做了一个动作,在这个动作中我称之为[PickerView removeFromSuperview]。但是,它不起作用

ViewController.h

#import <UIKit/UIKit.h>
@interface ViewController : UIViewController< UIPickerViewDelegate,UIPickerViewDataSource>
- (IBAction)dissmissPicker:(id)sender;
@property (nonatomic,strong) NSArray *ColorName;

@end

如何将PickerView添加到视图中?是否以模式显示、添加为子视图等

对于前者,您可以在调用该选取器的类中调用
-[dismissModalViewControllerAnimated:
,或者从选取器自身内部调用

对于后者,您的
-[removeFromSuperview]
方法应该可以正常工作


如果它是使用navigationController推送的,您应该能够调用该navigationController的-
[popViewControllerAnimated:
方法。

创建一个新的iVar,合成它并在

- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView{
    self.yourPickerViewiVar = pickerView;
    return 1;
}
比如说。然后您可以在iAction中使用它,Xcode不会继续说“未知”之类的话


我是从你使用interface builder的评论中假设的

如果是这样的话,你需要制作一个插座,并将其连接到IB中

-在.h文件中创建插座

IBOutlet UIPickerView *picker;
-在interface builder中连接插座

-驳回意见

[picker removeFromSuperview];

pickerView是有效的iVar吗?你可能会误以为pickerView是自动生成的,这是由于你使用的委托方法和它被明确提到的地方。实际上,当我使用pickerView时,它向我显示了一个错误。我也被[(UIPickerView*)pickerView]试过。但是,什么都不起作用。我从接口设计对象列表中添加了pickerview。它只在将视图的委托或数据源(目前不确定上述方法属于什么)连接到控制器对象时才起作用。
IBOutlet UIPickerView *picker;
[picker removeFromSuperview];