(iOS)如何使UIPickerView中的第一个值不可选?
我使用UIPickerView(例如)4行。 第一个值是灰色文本“挑选一个值”。 其他的是用户应该用黑色文本select的值。
挑选是可选的,所以用户可以跳过它。 但是,如果他们不这样做,用户将开始采摘后如何使第一个值不可select?
谢谢。 问候。
使用UIPickerView委托方法- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
更改选定的行,如果第一行被选中:
- (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component { if (row == 0) { [pickerView selectRow:row+1 inComponent:component animated:YES]; } }
编辑:您可以使用以下方法更改文字颜色:
- (NSAttributedString *)pickerView:(UIPickerView *)pickerView attributedTitleForRow:(NSInteger)row forComponent:(NSInteger)component { if (row == 0) return [[NSAttributedString alloc] initWithString:@"Pick a value" attributes:@{NSForegroundColorAttributeName:[UIColor lightGrayColor]}]; else { // Return titles } }
这是如果你的目标iOS 6+,它取代了以前使用的-pickerView:titleForRow:forComponent:
方法。
- 如何用Swift播放本地video?
- AVSpeechUserrance最大音量真的很安静,速度真的很快
- 在AVPlayerViewController中完成按钮单击事件
- PhoneGap InAppBrowser:打开iOS Safari浏览器
- 即使它不支持IPv6,如何在Google Cloud上运行iOS应用程序
- 从不同的视图控制器进行搜索时,UIScrollView具有不同的y位置
- Swift /如何使用动态高度的UITextView INSIDE UITableViewCell具有动态高度
- 在Objective-C中如何将数据从Iphone发送到OS2中的Apple Watch
- Xcode上的Tesseract运行错误