當我想添加或編輯表格中的值時,我使用模態視圖控制器。在編輯時,我在模態視圖控制器上設置了一個NSIndexPath屬性,以便它知道要更新哪個項目。但是,添加新項目時,不會發送NSIndexPath值,因此屬性保持未設置狀態。是否可以讓我的NSIndexPath屬性保持未設置狀態?
離開一個屬性像這樣沒有任何問題嗎?它不允許我將它設置爲「無」。
當我想添加或編輯表格中的值時,我使用模態視圖控制器。在編輯時,我在模態視圖控制器上設置了一個NSIndexPath屬性,以便它知道要更新哪個項目。但是,添加新項目時,不會發送NSIndexPath值,因此屬性保持未設置狀態。是否可以讓我的NSIndexPath屬性保持未設置狀態?
離開一個屬性像這樣沒有任何問題嗎?它不允許我將它設置爲「無」。
首先,你爲什麼不能把它設置爲nil
?這應該不成問題。
二,當一個對象佔用的內存在分配時被清零。這意味着當你創建一個對象時,所有的實例變量都被設置爲0,NULL,nil(全部只是0)。所以除非你修改一個實例變量(或者一個引用伊娃的屬性),否則它將爲零。
應該沒問題。我認爲,該房產初始化爲零。因此,在您的模態視圖控制器的dealloc
方法中,在零對象上調用release
是無操作。
或者,爲了安全起見,在您的模式視圖控制器的init方法中,將該屬性設置爲零,例如, self.myIndexPath = nil。這應該工作。
這很奇怪。當我調用'viewController.editingIndexPath = nil;'之前,我收到了錯誤消息。 (這與NSIndexPath不接受'void')有關。我只是取消註釋,看看錯誤信息是什麼,而且一切都很正常。一定是XCode 4玩起來了。謝謝您的幫助。 – 2011-04-13 15:39:40
Aaaaah我知道它是什麼。當我設置屬性時,我忘了放置一個'*'。我忘記了我在修改問題和現在之間修正了這個問題。 – 2011-04-13 15:42:11