【问题标题】:load view randomly随机加载视图
【发布时间】:2010-10-19 23:58:04
【问题描述】:

嗨,我希望随机加载一个视图。这些视图被称为 view1 view2 和 view3 下面是我使用的代码。谁能告诉我我应该在案例部分中替换的代码 - (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;

【问题讨论】:

    标签: iphone objective-c cocoa-touch


    【解决方案1】:
    switch(Number) {
        case 0:
             self.view = view1;
             break;
        case 1:
             self.view = view2;
             break;
        case 2:
             self.view = view3;
             break;
    }
    

    【讨论】:

    • 或者,更简单地说:id views[] = {view1, view2, view3}; self.view = views[Number];
    • 我想我会尽可能将解决方案与他的代码相匹配,这样他就可以发现它为什么不起作用。
    【解决方案2】:

    您应该删除:

                 - (void)viewDidLoad {
    

    在每个 case 语句中,以及它后面的大括号。

    【讨论】:

      【解决方案3】:

      你的代码只定义了函数中的内部函数,并没有调用它。

      【讨论】:

      • 你编译了吗?在我的环境下(Xcode 3.2.4 & SDK4.1),出现“'viewDidLoad' undeclared (first use in this function)”错误。
      • 是的,它对我也一样。我会从头开始整个项目,然后用更多的学习材料重新审视每一件事。我借出去的那本书,然后它消失在那个黑洞里
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-12-25
      • 1970-01-01
      • 2022-12-05
      • 1970-01-01
      • 1970-01-01
      • 2012-02-09
      • 1970-01-01
      相关资源
      最近更新 更多