本文实例为大家分享了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
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持VEVB武林网。
新闻热点
疑难解答