我的 numberOfComponentsInPickerView :
- (NSInteger)numberOfComponentsInPickerView:(UIPickerView *)pickerView
{
return 3;
}
我的 numberOfRowsInComponent :
- (NSInteger)pickerView:(UIPickerView *)pickerView numberOfRowsInComponent:(NSInteger)component
{
if (component == 0)
return 100;
if (component == 1)
return 100;
if (component == 2)
return 100;
return 0;
}
我的 titleForRow 是这样的:
- (NSString *)pickerView:(UIPickerView *)pickerView titleForRow:(NSInteger)row forComponent:(NSInteger)component
{
if (component == 0)
return [NSString stringWithFormat:@"%d", row];
if (component == 1)
return [NSString stringWithFormat:@"%d", row];
if (component == 2)
return [NSString stringWithFormat:@"%d", row];
return 0;
}
我的 didSelectRow 在像 Paras Joshi 所说的那样编辑之后:
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
{
int year = [picker selectedRowInComponent:0];
int month = [picker selectedRowInComponent:1];
int day = [picker selectedRowInComponent:2];
if(viewPicker.tag == 1)
labelDate1.text = [year stringByAppendingFormat:@" : %d : %d", month, day];
else
labelDate2.text = [year stringByAppendingFormat:@" : %d : %d", month, day];
}
它仍然给我错误“错误的接收器类型'int'”,我仍然不知道如何解决它。我的标签如何从 titleForRow 获取数据?
年月日的输入都是数字(从 0 到 99),所以我写了 -> return [NSString stringWithFormat:@"%d", row];
我没有将我的pickerview 的数据放在- (void)viewDidLoad,因为我希望我的 labelDate1 或 labelDate2 从pickerview 获取数据。我的标签是否有可能像我上面写的那样从pickerview获取数据?或者我必须将我的数据写入- (void)viewDidLoad吗?
寻求帮助,感谢您观看我的问题。