2015-10-17 41 views
1

(參見示意圖)UIPickerView模態帶有已經顯示的工具欄

如何用已經可見的工具欄實現此行爲?另外,我在打開UIPicker模式時發現的一點信息都是基於使用UITextField,這不是我想要的。

我在找的是一個工具欄上的按鈕,打開選擇器模式,並附上工具欄。草圖上的Button1只是簡單地選擇一個用戶最可能選擇的值(類似於「轉到今天的日期」),並且完成應該隱藏模式並使工具欄返回到原始狀態,以便連接到底部屏幕。

理想情況下,我希望這個帶有選擇器功能的工具欄可以在多個視圖中使用。

Sketch

回答

1

你可以添加約束你的故事板,將它們連接爲網點的代碼,然後禁用和啓用適當的人在需要時。

一個限制設置將是:

  • 添加銷拾取器的頂部到視圖
  • 底部的約束添加其他約束釘扎拾取器的底部視圖的底部

- >如果啓用1和關閉2,揀貨機被隱藏
- >如果啓用2和禁用1,選擇器是可見

約束條件的變化是可動態的,這將導致UI的平滑變化。

+0

不錯的主意,但是我怎麼能使用這個,而不必爲我的故事板中的多個視圖定義相同的UI元素?就像我剛纔提到的那樣,理想情況下,我需要這個功能在多個(目前是2個)視圖中運行。 – Marv

+1

@Marv嗯,你可以做的是提取整個工具欄或只是選擇器到不同的視圖+控制器,然後通過委託與父母進行通信,但它本身負責動畫和約束。然後,您可以在任何需要它的地方通過「容器視圖」('UIContainerView')來包含該視圖+控制器。 – luk2302

+0

非常感謝。工作得很好。有沒有關於動畫長度的指導方針,或者當您點擊文本字段時,您是否偶然知道默認選取器模態幻燈片的動畫持續時間? – Marv