2016-02-05 65 views
0

我從AddressBookUI中選擇姓名。而且我正在控制用戶名是否存在於我的數組中,並且我可以找到它。在聯繫人列表(AddressBook)上顯示AlertView

我的問題是我想在用戶點擊(選擇)後顯示和alertView,我得到了這個問題,但我在下面看到這個問題,而我想在contactList上顯示它。

警告:嘗試在 上顯示,其視圖 不在窗口層次結構中!

試圖同時它 解除分配不允許加載視圖控制器的觀點,並可能導致不確定的行爲 ()

請在那裏將是我的問題?

func peoplePickerNavigationController(peoplePicker: ABPeoplePickerNavigationController, didSelectPerson person: ABRecord) { 

    let firstName = ABRecordCopyValue(person, kABPersonFirstNameProperty)?.takeRetainedValue() as? String ?? "" 
    let lastName = ABRecordCopyValue(person, kABPersonLastNameProperty)?.takeRetainedValue() as? String ?? "" 

    if let parentVC = self.parentViewController as? UIPageViewController{ 
     if let parentNewCarRequestVC = parentVC.parentViewController as? NewCarRequestViewController{ 

      let people:RequestPeople = RequestPeople() 
      people.name = first 
      people.surname = last 

      if first.isEmpty || last.isEmpty{ 

       print("Error") 

      }else{ 

       for item in parentNewCarRequestVC.request.peoples{ 

        if item.name == firstName && item.surname! == lastName{ 

         let alert:UIAlertController = UIAlertController(title: 「Error」, message: 「Same Number」, preferredStyle:.Alert) 
         viewController.presentViewController(alert, animated:true, completion:nil); 

         return 
        } 
       } 

       parentNewCarRequestVC.request.peoples.addObject(people) 
      } 

     } 
     tableView.reloadData() 
    } 
} 

回答

0

如何將整個代碼放入調度塊?

dispatch_async(dispatch_get_main_queue()) {() -> Void in 
    let firstName ... 
    ... 
    if {... 
    tableView.reloadData() 
    } 
} 
+0

消失聯繫人列表後它正在如此工作。 – CAN

+0

如果沒有消失聯繫人列表,是否有機會查看警報? – CAN

+0

不是我所知道的。您可以嘗試在沒有動畫的情況下呈現下一個視圖ctrl。 – Karthik

相關問題