0
我是新來的目標C,並遇到以下行的問題。錯誤是:「傳遞'addTarget的參數3; action:forControlEvents:'從指針中取得整數而沒有強制轉換。」奇怪的是,我得到的警告和一切工作正常的IPAD,但在模擬器有時工作,有時不工作。我在tableviewcell中有一個textfield,當用戶鍵入它時,會將它們輸入的內容發送給一個變量。錯誤目標C forControlEvents
[textField addTarget:self action:@selector(setFilterCriteria:) forControlEvents:UITextFieldTextDidChangeNotification];
這裏是IBAction爲:
- (IBAction)setFilterCriteria:(id)sender {
UITextField *senderTextField = (UITextField *)sender;
appDelegate.setFilterCriteria = senderTextField.text;
}
奇怪的部分是,如果我使用UITextFieldTextDidChangeNotification行動大火上iPad,但不在模擬器上。如果我使用UIControlEventValueChanged,我不會收到警告,但行動永遠不會觸發。如果我將其更改回UITextFieldDidChangeNotification,則應用程序可以正常工作,我只是收到警告並且模擬器仍不會觸發該操作。 – Todd5
因此,我發現其他幾個人使用UITextFieldTextDidChangeNotification,但像我一樣存在問題。我最後將最後一部分從「forControlEvents:UITextFieldTextDidChangeNotification」更改爲「forControlEvents:UIContolEventEditingChanged」,這個事件似乎觸發了這個動作。出於某種原因,「forControlEvents:UIControlEventValueChanged」沒有做任何事情。現在我的警告消失了,事件在IPAD和模擬器上觸發。 – Todd5