iPhone应用开发之UIPickerView使用DEMO

移动开发 iOS
本文介绍的是UIPickerView使用DEMO,内容基于代码实现。主要是实现选择器的用法,来看详细代码。

iPhone应用开发之UIPickerView使用DEMO是本文要介绍的内容,内容不多,本文基于代码实现的内容,主要编写选择器的实现。从生肖选择、学历选择等来实现UIPickerView的用法,来看详细内容。

@interface Set_starViewController : UIViewController<UIPickerViewDelegate>{  
UIPickerView  *pickerview;  
UILabel       *contentview;  
NSArray       *content;//星座  
id      _delegate;  
int     _type;  
}  
-(id)initWithDelegate:(id)delegate type:(int)type;  
- (void)setString:(id)sender;  
@end  
//  Set_starViewController.m  
//  
//  Created by AmorYin on 10-11-23.  
//  Copyright 2010 __MyCompanyName__. All rights reserved.  
//  
#import "Set_starViewController.h"  
@implementation Set_starViewController  
-(id)initWithDelegate:(id)delegate type:(int)type  
{  
self = [super init];  
if (self != nil){  
UILabel *titleText = [[UILabel alloc] initWithFrame: CGRectMake(0, 0, 200, 20)];  
titleText.backgroundColor = [UIColor clearColor];  
titleText.textAlignment = UITextAlignmentCenter;  
titleText.textColor = [UIColor colorWithRed:0.33 green:0.33 blue:0.33 alpha:1.0];  
[titleText setFont:[UIFont systemFontOfSize:15.0]];  
[titleText setText:@"星座"];  
self.navigationItem.titleView=titleText;  
[titleText release];  
_delegate = delegate;  
UIButton *back = [[UIButton alloc] initWithFrame:CGRectMake(0.0, 0.0, 62.0, 32.0)];  
[back setBackgroundImage:[UIImage imageNamed:@"返回按钮.png"] forState:UIControlStateNormal];  
[back setBackgroundImage:[UIImage imageNamed:@"返回按钮按下.png"] forState:UIControlStateHighlighted];  
[back setBackgroundImage:[UIImage imageNamed:@"返回按钮.png"] forState:UIControlStateDisabled];  
[back addTarget:_delegate  
action:@selector(backView)  
  forControlEvents:UIControlEventTouchUpInside];  
UIBarButtonItem *add = [[UIBarButtonItem alloc] initWithCustomView:back];  
[[self navigationItem] setLeftBarButtonItem:add];  
[add release];  
[back release];  
UIBarButtonItem *save = nil;  
save = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemSave  
target:self   
action:@selector(setString:)];  
self.navigationItem.rightBarButtonItem = save;  
save = nil;  
[save release];  
if (type == 0) {  
content = [[NSArray alloc] initWithObjects:@"水瓶座",@"双鱼座",@"白羊座",@"金牛座"  
  ,@"双子座",@"巨蟹座",@"狮子座",@"处女座"  
  ,@"天秤座",@"天蝎座",@"射手座",@"山羊座",nil];  
_type = 0;  
}else {  
content = [[NSArray alloc] initWithObjects:@"初中",@"高中",@"中技",@"中专",@"大专",@"本科",@"MBA",@"硕士"  
 
  ,@"其他",nil];  
_type = 1;  
}  
}  
return self;  
}  
 
-(void) loadView  
{  
UIView  *myview = [[[UIView alloc] initWithFrame:[UIScreen mainScreen].applicationFrame] autorelease];  
myview.autoresizesSubviews = YES;  
[myview setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"background.png"]]];  
self.view  = myview;  
// 设置选择器  
pickerview = [[UIPickerView alloc] initWithFrame:CGRectMake(0.0, 150.0, 320.0, 216.0)];  
pickerview.delegate = self;  
pickerview.showsSelectionIndicator = YES;  
[self.view addSubview:pickerview];  
contentview = [[UILabel alloc] initWithFrame:CGRectMake(80.0, 80.0, 100.0, 40.0)];  
contentview.backgroundColor = [UIColor clearColor];  
[self.view addSubview: contentview];  
 
}  
 
- (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 {  
    [super viewDidUnload];  
    // Release any retained subviews of the main view.  
    // e.g. self.myOutlet = nil;  
}  
- (void)dealloc {  
    [super dealloc];  
[contentview release];  
[pickerview release];  
[content release];  
}  
 
#pragma mark -  
#pragma mark 处理方法  
// 返回显示的列数  
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView*)pickerView  
{  
return 1;  
}  
// 返回当前列显示的行数  
 
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component  
{  
return [content count];  
}  
// 设置当前行的内容,若果行没有显示则自动释放  
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component  
{  
return [content objectAtIndex:row];  
}  
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component  
{  
//NSString *result = [pickerView pickerView:pickerView titleForRow:row forComponent:component];  
NSString  *result = nil;  
result = [content objectAtIndex:row];  
NSLog(@"result: %@",result);  
contentview.text = result;  
[result release];  
}  
 
- (void)setString:(id)sender  
{  
// 传递值  
if (_type ==0) {  
[_delegate setSomthing:contentview.text name:@"star"];  
}else {  
[_delegate setSomthing:contentview.text name:@"xueli"];  
}  
[self.navigationController popViewControllerAnimated:YES];  
[self.navigationController pushViewController:_delegate animated:YES];  
[self.navigationController setNavigationBarHidden:NO];  
}  
@end 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65.
  • 66.
  • 67.
  • 68.
  • 69.
  • 70.
  • 71.
  • 72.
  • 73.
  • 74.
  • 75.
  • 76.
  • 77.
  • 78.
  • 79.
  • 80.
  • 81.
  • 82.
  • 83.
  • 84.
  • 85.
  • 86.
  • 87.
  • 88.
  • 89.
  • 90.
  • 91.
  • 92.
  • 93.
  • 94.
  • 95.
  • 96.
  • 97.
  • 98.
  • 99.
  • 100.
  • 101.
  • 102.
  • 103.
  • 104.
  • 105.
  • 106.
  • 107.
  • 108.
  • 109.
  • 110.
  • 111.
  • 112.
  • 113.
  • 114.
  • 115.
  • 116.
  • 117.
  • 118.
  • 119.
  • 120.
  • 121.
  • 122.
  • 123.
  • 124.
  • 125.
  • 126.
  • 127.
  • 128.
  • 129.
  • 130.
  • 131.
  • 132.
  • 133.
  • 134.
  • 135.
  • 136.
  • 137.
  • 138.

小结:iPhone应用开发之UIPickerView使用DEMO的内容介绍完了,希望通过本文的学习对你有所帮助!

责任编辑:zhaolei 来源: 互联网
相关推荐

2011-08-10 10:10:21

iPhoneUIPopoverCo

2011-08-11 10:03:43

iPhonecocoaNSRunLoop

2011-08-11 17:15:54

iPhone归档

2011-07-18 14:39:53

iPhone SDK UIKit

2011-08-17 15:19:38

iPhone应用数据

2011-08-09 13:22:31

iPhoneSqlite数据库

2011-08-19 13:34:33

iPhone应用ABAddressBo

2011-07-29 10:41:27

IPhone 应用开发 照相机

2011-08-03 16:01:24

iPhone应用开发 自动登陆

2011-08-08 13:50:29

iPhone开发 NSOperatio 多线程

2011-08-05 14:58:58

iPhone CoreAnimat 动画

2011-08-17 15:10:21

iPhone开发Web视图

2011-08-08 14:07:49

iPhone开发 字体

2011-07-27 10:16:41

iPhone SQLite 数据库

2011-08-01 18:27:58

iPhone开发 UISearchBa

2011-07-19 09:46:38

2011-07-08 14:58:16

iPhone Xcode iOS

2011-07-19 09:58:36

2011-08-08 16:56:44

iPhone 字符处理 视图

2011-08-08 10:10:14

iPhone开发 图片 方法
点赞
收藏

51CTO技术栈公众号