UIPickerView ピッカー


ピッカーとはくるくる回るやつのことである。
簡単に見えるが手順がややめんどう。

その1
UIPickerViewDelegateをUIPickerViewDataSourceを読み込む
@interface FirstViewController : UIViewController

こんな感じで感じでヘッダに書く

その2
Delegateメソッドを書く。
DelegateメソッドというみたいだけどAppDelegate.mに書かなくてよくてViewControllerにかけばいい。


- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 2;
}

- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
int count = 0;
switch (component) {
case 0:
count = [data1 count];
break;
case 1:
count = [data2 count];
break;
default:
break;
}
return count;
}

- (CGFloat)pickerView:(UIPickerView *)pickerView rowHeightForComponent:(NSInteger)component
{
return 35.0;
}

- (CGFloat)pickerView:(UIPickerView *)pickerView widthForComponent:(NSInteger)component
{
CGFloat width = 0.0;
switch (component) {
case 0: {
width = 100.0;
break;
}
case 1: {
width = 100.0;
break;
}
}
return width;
}

- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
NSString *string = @"";
switch (component) {
case 0: {
string = [data1 objectAtIndex:row];
break;
}
case 1: {
string = [data2 objectAtIndex:row];
break;
}
}
return string;
}

その3
ViewControllerに呼び出しするところを書く
-(void) setUpParts
{
data1 = [NSArray arrayWithObjects:
@"せが", @"さみー", @"ぐっでぃあ", @"ぼっち", @"(☝ ՞ਊ ՞)☝", @"ふへー", @"もらす", @"とける",
nil];

data2 = [NSArray arrayWithObjects:
@"00", @"01", @"02", @"03", @"04", @"05", @"06", @"07",
nil];

UIPickerView *customPickerView = [[UIPickerView alloc] initWithFrame:CGRectMake(0.0, 30.0, 0.0, 0.0)];
customPickerView.showsSelectionIndicator = YES;
customPickerView.delegate = self;

[self.view addSubview:customPickerView];
}

- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[self setUpParts];
}

参考にしたページ
http://iphone-tora.sakura.ne.jp/uipickerview.html
http://ameblo.jp/welx/entry-11066310316.html
http://ameblo.jp/yusuke-s9th-tech/entry-11193073519.html


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です