2010-10-19 81 views
0

您好,我希望隨機加載視圖。視圖被稱爲view1 view2和view3下面是我使用的代碼。任何人都可以告訴我我應該放在case部分的代碼來替換 - (void)viewDidLoad self.view = view1;因爲這是行不通的,謝謝隨機加載視圖

- (void)viewDidLoad { 
    [super viewDidLoad]; 

NSString *title = nil; 
NSString *path = nil; 

int Number = arc4random() % 3; 
switch(Number) { 
case 0: 
     - (void)viewDidLoad { 
      self.view = view1; 
     } 

break; 
case 1: 
     - (void)viewDidLoad { 
     self.view = view2; 
     } 

break; 

case 2: 
      - (void)viewDidLoad { 
       self.view = view3; 
      } 

break; 

回答

2
switch(Number) { 
    case 0: 
     self.view = view1; 
     break; 
    case 1: 
     self.view = view2; 
     break; 
    case 2: 
     self.view = view3; 
     break; 
} 
+0

或者更簡單的說:'id views [] = {view1,view2,view3}; self.view = views [Number];' – Chuck 2010-10-20 02:05:08

+0

我認爲我會盡可能地將解決方案與他的代碼相匹配,以便他可以發現它爲什麼不起作用。 – codelark 2010-10-20 02:08:08

1

您的代碼只定義函數中的內部函數,並沒有調用它。

+0

我該怎麼稱呼它 – 2010-10-24 11:17:15

+0

你編譯過嗎?在我的環境下(Xcode 3.2.4和SDK4.1),出現了「'未聲明的'viewDidLoad(首次在此函數中使用)」錯誤。 – KatokichiSoft 2010-10-29 02:41:03

+0

是的,它對我也一樣。不好意思從頭開始整個項目,並用更多的學習材料去探索每一件事情。我借出的那本書被借出了,它消失在那個黑洞裏 – 2010-10-30 23:05:25

2

您應該刪除:

   - (void)viewDidLoad { 

在每一個case語句,以及它之後結束括號。