iOS 에서 PickerView 를 사용해서,
시간을 선택하는 방법을 추가해보도록 하자
최종화면은 다음과 같이 피커뷰에서 3개의 항목으로 구성이 되어
각 항목이 시. 분. 초 를 선택할 수 있도록 하는 것이다
iOS 에서 PickerView 를 사용하기 위한,
준비단계는 다음 링크를 통해서 확인 가능하다
GO TO ==>> 준비단계
추가하려는 시간을 선택하는 기능은
PickerView 를 추가할 때에 사용되는
UIPickerViewDelegate, UIPickerViewDataSource
를 사용하면 된다
헤더파일에 시.분.초를 담기위한 NSArray 를 3개 선언한다
===================================================================================
#import <UIKit/UIKit.h>
@interface TimerSetupViewController : UIViewController <UIPickerViewDelegate, UIPickerViewDataSource>
{
}
@property (strong, nonatomic) NSArray *hours;
@property (strong, nonatomic) NSArray *minutes;
@property (strong, nonatomic) NSArray *seconds;
메인파일에는 다음과 같은 준비들도 필요하다
===================================================================================
@synthesize hours;
@synthesize minutes;
@synthesize seconds;
- (void)viewDidLoad {
// 이런 하드코딩보다는 for문을 써서 넣을 수 있는 방법이 있을것이다
hours = @[@"0",@"1",@"2",@"3"];
minutes = @[@"0",@"1",@"2",@"3",@"4",@"5",@"6"];
seconds = @[@"0",@"1",@"2",@"3",@"4",@"5",@"6",@"7",@"8",@"9",@"10"];
===================================================================================
간단하게 하드코딩으로,
각 Array 에 들어갈 값들을 넣는다
그리고 다음 3개의 함수에
원하는 형태의 내용을 추가하면 된다
===================================================================================
// returns the number of 'columns' to display.
// pickerView가 사용자에게 표시될 컴포넌트의 번호를 확인한다
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 3;
}
// returns the # of rows in each component..
// 특정한 컨포넌트에서 표시되는 행의 숫자를 pickerView에게 알려준다.
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
if(component == 0){
return hours.count;
}else if(component == 1){
return minutes.count;
}else if(component == 2){
return seconds.count;
}
return 0;
}
// 각 컴포넌트에서 사용되는 명칭들
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
if(component == 0){
return hours[row];
}else if(component == 1){
return minutes[row];
}else if(component == 2){
return seconds[row];
}
return @"abc";
}
===================================================================================
모든 코딩을 완료하면,
다음과 같은, 원하는 형태의 PickerView를 볼 수 있다
'IT > iPhone' 카테고리의 다른 글
ios에서 테이블뷰에 셀을 넣고, 그 셀에 버튼기능 추가하기 - 검색편 (0) | 2016.05.08 |
---|---|
ios에서 2차원배열 값 replaceObjectAtIndex 사용하여 수정하기 (0) | 2016.05.06 |
ios에서 테이블뷰에서, 커스터마이징된 셀을 삭제하는 법 - 검색편 (0) | 2016.05.03 |
ios에서 PickerView 를 사용하기 위한 준비단계 (0) | 2016.04.29 |
[ios앱만들기-사진편집] 카메라 기능 추가하기 (0) | 2016.04.22 |