KkM*_*MIW 3 objective-c toolbar uipickerview uibarbuttonitem ios
选择器视图与工具栏,创建完成按钮上.单击完成按钮,它不起作用.
选择器视图向上滚动.点击完成按钮.
-(void)createPicker:(id)sender{
pickerView = [[UIPickerView alloc] initWithFrame:CGRectMake(0,100,0,0)];
[pickerView setDataSource: self];
[pickerView setDelegate: self];
pickerView.showsSelectionIndicator = YES;
[pickerView setBackgroundColor:[UIColor whiteColor]];
UIToolbar *toolBar = [[UIToolbar alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, 44)];
toolBar.barStyle = UIBarStyleBlackOpaque;
UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(doneTouched:)];
[toolBar setItems:[NSArray arrayWithObjects:[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil], doneButton, nil]];
[pickerView addSubview:toolBar];
}
Run Code Online (Sandbox Code Playgroud)
点击完成按钮关闭pickerView
-(void)doneTouched:(id)sender{
[pickerview removeFromSuperview];
}
Run Code Online (Sandbox Code Playgroud)
我不知道我在这里做错了什么.任何人都可以建议我如何调用uipickerview工具栏按钮上添加的完成按钮方法.
点击完成选择器视图向上滚动,而不是调用doneTouched方法:
@All先谢谢.
我已经解决了不知道是否正确实施的问题,但它对我有用.下面是带有完成按钮的选择器视图的代码
-(void)createPickerView{
pickerToolBarView = [[UIView alloc]initWithFrame:CGRectMake(0,self.view.frame.size.height/2, self.view.frame.size.width,400)];
[pickerToolBarView setBackgroundColor:[UIColor whiteColor]];
UIToolbar *toolBar = [[UIToolbar alloc] initWithFrame:CGRectMake(0,0,pickerToolBarView.frame.size.width,42)];
toolBar.barStyle = UIBarStyleBlackOpaque;
UIBarButtonItem *doneButton = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemDone target:self action:@selector(doneTouched:)];
[toolBar setItems:[NSArray arrayWithObjects:[[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpace target:nil action:nil], doneButton, nil]];
pickerView = [[UIPickerView alloc] initWithFrame:CGRectMake(0,toolBar.frame.size.height,toolBar.frame.size.width,100)];
[pickerView setDataSource: self];
[pickerView setDelegate: self];
pickerView.showsSelectionIndicator = YES;
[pickerView setBackgroundColor:[UIColor whiteColor]];
[pickerToolBarView addSubview:toolBar];
[pickerToolBarView addSubview:pickerView];
[self.view addSubview:pickerToolBarView];
[self.view bringSubviewToFront:pickerToolBarView];
[pickerToolBarView setHidden:YES];
}
/* Done Touched */
- (void)doneTouched:(UIBarButtonItem *)sender{
// hide the view
NSLog(@"Done Touched");
[pickerToolBarView setHidden:YES];
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4322 次 |
| 最近记录: |