Iphone SDK - 多个子视图和shouldAutorotateInterfaceOrientation

时间:2009-08-23 23:25:11

标签: iphone-sdk-3.0

“iPhone应用程序编程指南”显示了一个标有“清单2-1创建带视图的窗口”的示例(见下文)。这显示了如何创建两个子视图并将其添加到窗口。

我使用的是类似的模式=。这工作正常,两个窗口都显示。

我遇到的问题是让它识别并进行轮换。我添加了shouldAutorotateInterfaceOrientation方法来返回YES。这些正在被看到。但只有一个视图被轮换。

更具体地说,要添加的最后一个视图会被旋转而前一个视图不会被旋转。我可以通过将其作为第二个addsubview来旋转。但无法让两者都旋转。 (在Iphone模拟器中测试。)

有关使两个视图正确旋转所需的建议吗?

这是Apples示例代码。

- (void)applicationDidFinishLaunching:(UIApplication *)application {
    // Create the window object and assign it to the
    // window instance variable of the application delegate.
    window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    window.backgroundColor = [UIColor whiteColor];

    // Create a simple red square
    CGRect redFrame = CGRectMake(10, 10, 100, 100);
    UIView *redView = [[UIView alloc] initWithFrame:redFrame];
    redView.backgroundColor = [UIColor redColor];

    // Create a simple blue square
    CGRect blueFrame = CGRectMake(10, 150, 100, 100);
    UIView *blueView = [[UIView alloc] initWithFrame:blueFrame];
    blueView.backgroundColor = [UIColor blueColor];

    // Add the square views to the window
    [window addSubview:redView];
    [window addSubview:blueView];

    // Once added to the window, release the views to avoid the
    // extra retain count on each of them.
    [redView release];
    [blueView release];

    // Show the window.
    [window makeKeyAndVisible];
}

1 个答案:

答案 0 :(得分:0)

遗憾的是,这个问题被遗弃了...... 我很乐意找到答案,因为它会导致iPad SDK出现很多问题...在强制横向模式下添加1个以上的子视图,只能制作一个旋转视图。 导致很多混乱,系统出现了一些问题。 〜纳坦。