2012-03-29 53 views
0

看來我在segue期間創建的viewcontroller無法修改或創建任何類型爲NSArray的成員變量。我可以在任何函數內創建局部變量,但是分配成員變量不起作用,也不會在init中分配數組。在UIViewController期間無法分配或分配NSArray

這是怎麼回事?

這將工作,如果不使用iOS5.1和Xcode 4.3我敢肯定。

- (id)initWithViewControllers:(NSArray *)newViewControllers 
{ 
    if (self = [super init]) { 
     _viewControllers = [newViewControllers retain]; 
    } 

    return self; 
} 

成員變量都設置正確。它根本不分配_viewControllers任何東西。它總是零。

我不能包含整個代碼但本質上是這樣的:

根導航控制器用於裝載表視圖控制器從兩行來接。每行然後推動另一個視圖控制器加載我們做一些工作的地方。當我點擊該行並分配另一個視圖控制器時發生故障。在分配期間,NSMutableArray或NSArray類型的成員變量不會被創建,它們總是返回0x0。我無法通過創建我自己的initWithArray來設置變量:(NSArray *)。

請不要投票,如果它缺少的問題是有效的,可以修改。只是發表評論,我會回答。我從來沒有見過Obj-C以這種方式行事,這就是爲什麼我發佈這個。

+0

你可以發佈相關的代碼和確切的問題嗎? (Xcode錯誤或打印輸出的意外結果) – rosslebeau 2012-03-29 19:56:00

+0

你要在哪裏使用*這個實例變量,你看到它爲零?這很可能是你的問題。 – Chuck 2012-03-29 20:48:38

+0

它最終成爲一個腐敗PNG怪異副作用的問題。 – cynistersix 2012-03-30 01:32:17

回答

0

看起來像你想NSMutableArray?

+0

不,他們不分配任何NSArray。 NSMutableArray是一個NSArray – cynistersix 2012-03-29 20:44:40

0

我發現了這個問題。 UX團隊提供的png解決方案沒有高度或無限高度。它們顯示爲沒有alpha通道的png。我不知道如何這是副作用,但我解決了數組不會分配到使用我自己的PNG文件,它解決了問題。

再一次,我不知道這是如何導致這個漣漪通過應用程序。