我想在定製文本後填充我的選擇器視圖。當我可以用數組填充它時,我無法改變它的文本顏色。我到處搜索,發現兩者都是分開的,或者它們已經改變了文本顏色或者用數組填充了它。以下是我嘗試過的代碼。如何在改變文字顏色後用數組填充UIpickerView?
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 1;
}
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
return [self.CityList count];
}
- (UIView *)pickerView:(UIPickerView *)pickerView viewForRow:(NSInteger)row forComponent:(NSInteger)component reusingView:(UIView *)view
{
UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, pickerView.frame.size.width, 44)];
label.textColor = [UIColor whiteColor];
label.font = [UIFont fontWithName:@"HelveticaNeue-Bold" size:18];
label.textAlignment = NSTextAlignmentCenter;
if (row == 0)
{
label.text = self.CityList[0];
}
else if (row == 1)
{
label.text = self.CityList[1];
}
else if (row == 2)
{
label.text = self.CityList[2];
}
else if (row == 3)
{
label.text = self.CityList[3];
}
else if (row == 4)
{
label.text = self.CityList[4];
}
else if (row == 5)
{
label.text = self.CityList[5];
}
return label;
}
這段代碼實際上工作正常,但是當我的數組中有太多的時候,以這種方式實現它肯定是沒有效率的。請給我一個有效的方法。
你真正的問題是什麼? –
你爲什麼寫這麼多,而不是這個 label.text = self.CityList [row]; –
上面的代碼給了我一種自定義選擇器視圖的方法,但是我無法通過這樣做來填充它。我必須分配每一行......。 :( – nravichan