有沒有辦法讓Xcode中的PickerView開始在默認行?現在,我的PickerView從我的數組中的第一個元素開始。例如,如果我有1行30行的組件,當用戶第一次看到PickerView時,如何使PickerView從第15行開始?Xcode:如何使PickerView在某行首次顯示時開始
感謝
有沒有辦法讓Xcode中的PickerView開始在默認行?現在,我的PickerView從我的數組中的第一個元素開始。例如,如果我有1行30行的組件,當用戶第一次看到PickerView時,如何使PickerView從第15行開始?Xcode:如何使PickerView在某行首次顯示時開始
感謝
使用 - [UIPickerView selectRow:inComponent:動畫:] ...假設你有一個組件,請執行下列操作:
UIPickerView *aPicker = [[[UIPickerView alloc] init] autorelease];
aPicker.delegate = self;
aPicker.dataSource = self;
aPicker.showsSelectionIndicator = YES;
[self.view addSubview:aPicker];
[aPicker selectRow:14 inComponent:0 animated:NO];
你必須指定一個命名爲selectedrow變量,在你的viewDidLoad中有默認值0。 即int seletedrow = 0;
之後做以下,在UIPickerView的didSelectRow方法:
- (void) pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent: (NSInteger)component
{
selectedrow=row;
}
,最後寫下面的代碼你在哪裏初始化PickerView:
_pickerView=[[UIPickerView alloc]initWithFrame:CGRectMake(0, 43, 320, 480)];
_pickerView.delegate=self;
_pickerView.dataSource=self;
_pickerView.backgroundColor=[UIColor whiteColor];
[_pickerView selectRow:selectedrow inComponent:0 animated:NO];
[_pickerView setShowsSelectionIndicator:YES];