Избегайте "Не могу сделать... класс... в номер типа." ошибка
property myValue : ""
property myPopUp : missing value
on applicationWillFinishLaunching_(aNotification)
tell standardUserDefaults() of current application's NSUserDefaults
registerDefaults_({myValue:myValue})
set myValue to objectForKey_("myValue") as text
end tell
myPopUp's selectItemAtIndex_(myValue - 1)
end applicationWillFinishLaunching_
on myButtonHandler_(sender)
set myValue to (myPopUp's indexOfSelectedItem) + 1 -- This line may be mistake
end myButtonHandler_
on applicationShouldTerminate_(sender)
tell standardUserDefaults() of current application's NSUserDefaults
setObject_forKey_(myValue, "myValue")
end tell
return current application's NSTerminateNow
end applicationShouldTerminate_
Я написал этот код, но я получаю эту ошибку отладки:
(Project Name)[42733:303] *** -[AppDelegate myButtonHandler:]: Can’t make «class ocid» id «data optr00000000C7FFFFFFFFFFFFFF» into type number. (error -1700)
Может кто-нибудь сказать мне, как исправить мой код? Как мне избежать ошибки?
1 ответ
Решение
Я решил эту проблему сам.
property myValue : ""
property myPopUp : missing value
on applicationWillFinishLaunching_(aNotification)
tell standardUserDefaults() of current application's NSUserDefaults
registerDefaults_({myValue:myValue})
set myValue to objectForKey_("myValue") as text
end tell
myPopUp's selectItemAtIndex_(myValue - 1)
end applicationWillFinishLaunching_
on myButtonHandler_(sender)
set myValue to (myPopUp's indexOfSelectedItem()) + 1 --Here is the mistake
end myButtonHandler_
on applicationShouldTerminate_(sender)
tell standardUserDefaults() of current application's NSUserDefaults
setObject_forKey_(myValue, "myValue")
end tell
return current application's NSTerminateNow
end applicationShouldTerminate_
Я должен был написать indexOfSelectedItem(), но я написал indexOfSelectedItem.