我的UIPicker視圖中填充了選擇選項。我選擇他們並單擊但UIViewPicker
不關閉。我如何關閉它或至少開啓事件以便我可以用編程方式隱藏它?IOS8。在選擇時關閉UIPickerView點擊swift
我看着UIPickerViewDelegate
,但還沒有找到任何合適的方法,不會執行項目選擇,但只有當我點擊選定的項目。
感謝您的幫助!
我的UIPicker視圖中填充了選擇選項。我選擇他們並單擊但UIViewPicker
不關閉。我如何關閉它或至少開啓事件以便我可以用編程方式隱藏它?IOS8。在選擇時關閉UIPickerView點擊swift
我看着UIPickerViewDelegate
,但還沒有找到任何合適的方法,不會執行項目選擇,但只有當我點擊選定的項目。
感謝您的幫助!
使用UIPickerView像波紋管的委託方法..
(無效)pickerView:(UIPickerView *)thePickerView didSelectRow:(NSInteger的)行inComponent:(NSInteger的)分量{
yourTextField.text = [yourArray objectAtIndex:row];
thePickerView.hidden = YES;
}
更新
您可以添加一個UITapGestureRecognizer到UIPickerView:
UITapGestureRecognizer * tapGR = [UITapGestureRecognizer頁頭] initWithTarget:自 動作:@selector(pickerViewTapped]。 [pickerView addGestureRecognizer:tapGR];
然後:
你可以使選擇器可見,一旦使用textFieldDidBeginEditing功能在文本字段的用戶點擊,然後隱藏使用didSelectRow功能...
我還建議你添加的touchesBegan功能來隱藏它,如果用戶觸摸選擇器視圖之外的屏幕的任何部分。
override func touchesBegan(touches: NSSet, withEvent event: UIEvent) {
myPicker.hidden = true
}
我當然假設你已經做了所有需要的數據源和委託的UIPickerView鏈接和功能的...
在didSelectRow方法只在互動結束後加入這一行:
self.view.endEditing(true)
選擇發生變化時會執行此操作。我需要在我實際點擊所選項目時執行的方法。 – 2014-09-11 07:14:41
@WildGoat您只能在選取器視圖中更改選擇。你如何點擊選擇器視圖? – Ramesh 2014-09-11 08:45:23
是的,你旋轉和改變選擇視圖中的選項,但只要你找到所需的選項,你所做的就是點擊它,然後選擇器視圖消失。如果我把它放在pickerView方法中,它會隱藏它,然後在更改完成後立即點擊。你明白我的意思了嗎? – 2014-09-11 12:16:09