[英]Return numberOfRowsInComponent & titleForRow in UIPickerview based on another UIpickerview's didSelectRow
祝大家有美好的一天
我嘗試在主題行中解釋我的查詢。 據我所知以及從代碼中所看到的,所有pickerviews都在ViewDidLoad()中初始化,這意味着它們都具有數據集。 作為我的數據驗證的一部分(在這種情況下非常重要),我想根據先前的選擇設置以下pickerview。
卡住的地方是使用“新”數據填充以下pickerview的標題並重新加載視圖。
理想情況下,我希望視圖在進行先前選擇時出現。
如果您知道如何合理地執行此操作,請告訴我,我將感謝您目前能獲得的任何幫助!
我並不確定邏輯上的含義,但是您只是使用if語句和開關來確定選擇了什么,以及根據選擇來顯示什么。 然后,您重新加載數據。
func pickerView(pickerView: UIPickerView,
didSelectRow row: Int,
inComponent component: Int)
{
if component == 0
{
switch row{
case 0:
self.titlesForComponentOne = ["One","Two","Three","Four"]
case 1:
self.titlesForComponentOne = ["One","Two"]
default:
self.titlesForComponentOne = ["One","Three","Four"]
}
}else if component == 1
{
switch row{
case 0:
self.titlesForComponentTwo = ["Three", "Four"]
case 1:
….
self.picker.reloadAllComponents() // or just ones that need to be updated
}
func pickerView( pickerView: UIPickerView,
numberOfRowsInComponent component: Int) -> Int
{
switch component{
case 0:
return self.titlesForComponentZero.count
case 1:
return self.titlesForComponentOne.count
case 2:
….
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.