当前位置: 代码迷 >> Iphone >> iphone的PickerView施用
  详细解决方案

iphone的PickerView施用

热度:26   发布时间:2016-04-25 06:00:35.0
iphone的PickerView使用

1. File -> New Project -> View-based Application -> ?输入工程名称 PickerView

?

2. PickerViewViewController.h

? ??

#import <UIKit/UIKit.h>  @interface PickerViewViewController : UIViewController<UIPickerViewDataSource, UIPickerViewDelegate>  {      UIPickerView *m_pPickerView;      NSArray *m_data;  }  @property (nonatomic, retain) IBOutlet UIPickerView *m_pPickerView;  @property (nonatomic, retain) NSArray *m_data;  @end  

?3.?PickerViewViewController.m

#import "PickerViewViewController.h"  @implementation PickerViewViewController  @synthesize m_pPickerView, m_data;  /* // The designated initializer. Override to perform setup that is required before the view is loaded. - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil {     self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];     if (self) {         // Custom initialization     }     return self; } */  /* // Implement loadView to create a view hierarchy programmatically, without using a nib. - (void)loadView { } */    // Implement viewDidLoad to do additional setup after loading the view, typically from a nib.  - (void)viewDidLoad {      NSArray *arr = [[NSArray alloc] initWithObjects:@"白菜", @"包心菜", @"菠菜", @"韭菜", @"冬瓜", @"胡萝卜", @"竹笋", nil];            self.m_data = arr;      [arr release];            [super viewDidLoad];  }  /* // Override to allow orientations other than the default portrait orientation. - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {     // Return YES for supported orientations     return (interfaceOrientation == UIInterfaceOrientationPortrait); } */  - (void)didReceiveMemoryWarning {      // Releases the view if it doesn't have a superview.      [super didReceiveMemoryWarning];            // Release any cached data, images, etc that aren't in use.  }  - (void)viewDidUnload {      // Release any retained subviews of the main view.      // e.g. self.myOutlet = nil;      m_pPickerView = nil;      m_data = nil;      [super viewDidUnload];  }    - (void)dealloc {      [m_pPickerView release];      [m_data release];      [super dealloc];  }  #pragma mark -  #pragma mark Picker View Data Source Methods  - (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView  {      return 1;  }  - (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component  {      return [m_data count];  }  #pragma mark -  #pragma mark Picker View Delegate Methods  - (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component  {      return [m_data objectAtIndex:row];  }  @end  

?4. 双击 PickerViewViewController.xib, 按下shift + command + L, 拖一个PickerView 放到View上。

?

?? ?按下control 键同时从 File's Owner 拖动到 PickerView 控件上,连接输入口(IBOutlet).

?

?? ?按下 command + 2, 把 dataSource和delegate 拖动到File's Owner上。

?

5. 运行后的效果如下:

?

  相关解决方案