【问题标题】:UIScrollview in a UIViewControllerUIViewController 中的 UIScrollview
【发布时间】:2011-08-23 19:49:49
【问题描述】:

我正在尝试修改 Apple PageControl 示例(iPhone 版本),以便通过 UIViewController 而不是示例使用的 UIWindow 显示 UIScrollView。

按照示例,AppDelegate.m 像这样启动 phoneContentController:

[[NSBundle mainBundle] loadNibNamed:nibTitle owner:self options:nil];
[self.window addSubview:self.contentController.view];
[window makeKeyAndVisible];

当我尝试像这样启动相同类型的内容控制器时:

myController = [[MyController alloc] initWithNibName:@"MyController" bundle:nil];
myController.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:myController animated:YES];

我只是得到一个空白屏幕。

修改中的所有内容 - 不是所有内容;我无法让这个愚蠢的东西工作 - 映射到 PageControl。

谁有一个可行的例子?滚动视图不会是此应用程序中显示的第一个面板。当用户到达 ScrollView 时,它已经向下移动了几个屏幕。

我不敢相信我不能在谷歌上找到这种行为的例子。看起来很基础。

很累, 史蒂夫

【问题讨论】:

  • 您的 loadView 或 viewDidLoad 方法是否做了任何可能导致无效视图的特定操作?
  • 我使用 initWithNibNameMethod 初始化,而 PageControl 示例使用 loadNibNamed 方法初始化。所以不,loadView 和 viewDidLoad 方法没有被修改。

标签: iphone uiviewcontroller uiscrollview


【解决方案1】:

以防万一其他人举起该示例并遇到我正在努力解决的相同错误。解决这个问题的方法是从 PhoneContentController.m 类中删除以下方法:

- (UIView *)view
{
    return self.scrollView;
}

AppDelegate 正在将视图从 contentController(在本例中为 PhoneContentController)添加到窗口,因此当它使窗口可见时,它需要一个对视图属性的访问器。

[self.window addSubview:self.contentController.view];
[window makeKeyAndVisible];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-17
    • 2023-03-28
    相关资源
    最近更新 更多