【代碼筆記】iOS-自訂選擇框(高底強弱),ios-強弱
一,
二,代碼。
ViewController.h
#import <UIKit/UIKit.h>@interface ViewController : UIViewController<UIPickerViewDataSource,UIPickerViewDelegate>@end
ViewController.m
#import "ViewController.h"#define Color(r, g, b,d) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:d]#define W [UIScreen mainScreen].bounds.size.width#define H [UIScreen mainScreen].bounds.size.height@interface ViewController (){ NSMutableArray *arrayData; UIView *chooseView;}@end@implementation ViewController- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. //初始化選擇介面 [self addChooseView];}#pragma -mark -functions//初始化選擇頁面-(void)addChooseView{ //背景框 chooseView = [[UIView alloc]initWithFrame:CGRectMake(0,H- H*0.45, W, H*0.45)]; chooseView.backgroundColor = Color(230, 230, 230, 1); [self.view addSubview:chooseView]; //完成按鈕上面的線 UIView *line3 = [[UIView alloc]initWithFrame:CGRectMake(0, 0, W, 1)]; line3.backgroundColor = Color(202, 202, 202, 1); [chooseView addSubview:line3]; //完成按鈕下面的線 UIView *line4 = [[UIView alloc]initWithFrame:CGRectMake(0, 40, W, 1)]; line4.backgroundColor = Color(202, 202, 202, 1); [chooseView addSubview:line4]; //完成按鈕 UIButton *finishedBtn = [UIButton buttonWithType:UIButtonTypeCustom]; finishedBtn.frame = CGRectMake(W-50, 5, 50, 30); [finishedBtn setTitleColor:[UIColor blueColor] forState:UIControlStateNormal]; [finishedBtn setTitle:@"完成" forState:UIControlStateNormal]; [finishedBtn addTarget:self action:@selector(doClickFinishButton) forControlEvents:UIControlEventTouchUpInside]; [chooseView addSubview:finishedBtn]; UIPickerView *choosePicker = [[UIPickerView alloc]initWithFrame:CGRectMake(0, 40, W, chooseView.bounds.size.height-40)]; choosePicker.delegate = self; choosePicker.dataSource = self; [chooseView addSubview:choosePicker]; arrayData=[[NSMutableArray alloc]initWithObjects:@"高",@"中",@"強",@"弱", nil];}#pragma -mark -doClickActions-(void)doClickFinishButton{ chooseView.hidden=YES; NSLog(@"點擊完成按鈕");}#pragma -mark -UIPickerViewDelegate- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView{ return 1;}- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component{ return arrayData.count;}- (NSString*)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component{ return [arrayData objectAtIndex:row];}- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component{ NSString *chooseStr = [NSString stringWithFormat:@"%ld", (long)row]; NSLog(@"---chooseStr--%@",chooseStr);}- (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated.}@end