2011-04-13 17 views
0

當我想添加或編輯表格中的值時,我使用模態視圖控制器。在編輯時,我在模態視圖控制器上設置了一個NSIndexPath屬性,以便它知道要更新哪個項目。但是,添加新項目時,不會發送NSIndexPath值,因此屬性保持未設置狀態。是否可以讓我的NSIndexPath屬性保持未設置狀態?

離開一個屬性像這樣沒有任何問題嗎?它不允許我將它設置爲「無」。

回答

1

首先,你爲什麼不能把它設置爲nil?這應該不成問題。

二,當一個對象佔用的內存在分配時被清零。這意味着當你創建一個對象時,所有的實例變量都被設置爲0,NULL,nil(全部只是0)。所以除非你修改一個實例變量(或者一個引用伊娃的屬性),否則它將爲零。

+0

這很奇怪。當我調用'viewController.editingIndexPath = nil;'之前,我收到了錯誤消息。 (這與NSIndexPath不接受'void')有關。我只是取消註釋,看看錯誤信息是什麼,而且一切都很正常。一定是XCode 4玩起來了。謝謝您的幫助。 – 2011-04-13 15:39:40

+0

Aaaaah我知道它是什麼。當我設置屬性時,我忘了放置一個'*'。我忘記了我在修改問題和現在之間修正了這個問題。 – 2011-04-13 15:42:11

1

應該沒問題。我認爲,該房產初始化爲零。因此,在您的模態視圖控制器的dealloc方法中,在零對象上調用release是無操作。

或者,爲了安全起見,在您的模式視圖控制器的init方法中,將該屬性設置爲零,例如, self.myIndexPath = nil。這應該工作。

相關問題