本文实例为大家分享了iOS自定义选择框的具体代码,供大家参考,具体内容如下
效果图:
工程图:
代码:
RootViewController.h
#import <UIKit/UIKit.h> #import "CYCustomMultiSelectPickerView.h" @interface RootViewController : UIViewController <CYCustomMultiSelectPickerViewDelegate> { CYCustomMultiSelectPickerView *multiPickerView; UILabel *pickLabel; } @end
RootViewController.m
#import "RootViewController.h" @interface RootViewController () @end @implementation RootViewController - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil { self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; if (self) { // Custom initialization } return self; } - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. self.title=@"ALPickerView"; pickLabel=[[UILabel alloc]initWithFrame:CGRectMake(10, 100, 100, 50)]; pickLabel.backgroundColor=[UIColor orangeColor]; pickLabel.textAlignment=NSTextAlignmentCenter; [self.view addSubview:pickLabel]; } //随意点击任意处,弹出选择框 -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { [self initPickerView]; } -(void)initPickerView { for (UIView *view in self.view.subviews) { if ([view isKindOfClass:[CYCustomMultiSelectPickerView class]]) { [view removeFromSuperview]; } } multiPickerView = [[CYCustomMultiSelectPickerView alloc] initWithFrame:CGRectMake(0,[UIScreen mainScreen].bounds.size.height - 260-20, 320, 260+44)]; multiPickerView.backgroundColor = [UIColor clearColor]; multiPickerView.entriesArray = [NSMutableArray arrayWithObjects:@"one",@"two",@"three",@"four",@"five",@"six",@"seven", nil]; multiPickerView.entriesSelectedArray = [NSMutableArray arrayWithObject:@"one"]; multiPickerView.multiPickerDelegate = self; [self.view addSubview:multiPickerView]; [multiPickerView pickerShow]; } #pragma -mark -picker delegate //点击确定要执行的操作 -(void)returnChoosedPickerString:(NSMutableArray *)selectedEntriesArr { NSLog(@"returnChoosedPickerString"); NSMutableArray* newArray = [NSMutableArray array]; for (NSString* str in selectedEntriesArr) { [newArray addObject:str]; } NSString *endStr = [newArray componentsJoinedByString:@","]; pickLabel.text=endStr; } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } @end
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持亿速云。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。