我正在为日期创建自己的 UIPickerview,因为我只需要月份和日期并且不需要年份,所以我不能使用 UIDatePicker。When different months are selected I cannot seem to replicate the way UIDatepicker gray's out the unavailable days. 例如:选择11月1日是可以选择的,但使用UIDESPICKER时31不是31。有谁知道如何复制它并使某些行变灰且无法选择。提前致谢
问问题
4708 次
2 回答
2
我意识到您可能已经想通了,但我想为那些寻找相同答案的人添加一些进一步的信息。
您可以尝试的另一种方法是通过:
-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
在该方法中,您将检查 pickerView 中的特定组件是否具有有效选择。如果没有,则将特定组件(列 - 他们为什么不直接调用它)重置为有效行:
[pickerView selectRow:validRow inComponent:component animated:YES];
这将产生这样的效果,如果用户选择了一个特定的无效行,它将向上(或向下)滚动到一个有效行。
此外,您可以更改相关组件的数据集,然后执行以下操作:
[pickerView reloadAllComponents];
请记住,当您设置选取器时,您必须在第一次运行时进行此验证,以确保默认情况下选取器视图中没有无效数据集。
于 2011-03-12T04:43:59.150 回答
0
您将不得不编写一个自定义选择器视图
于 2010-10-29T22:41:39.147 回答