自定义视图以横向模式替换TableView

时间:2012-06-25 08:38:05

标签: ios uitableview landscape custom-view

我正在开发一个iOS应用程序,在纵向模式下有一个小表格视图。我希望这种观点在景观模式中变得完全不同。我还没有编写它,但像http://www.vertex42.com/ExcelArticles/Images/timeline/Timeline-for-Benjamin-Franklin.gif(它将在滚动视图中)

我已经阅读过类似的内容:“Trying to load new view upon orientation change”但由于我的肖像视图是UITableView,我不知道如何设置纵向视图......

我正在使用由AppDelegate启动的UITableViewController子类。

感谢您的回答并抱歉我的英语不好......

编辑:解决方案:你必须创建一个带有两个视图的自定义UIViewController,它们将是tableView的委托和数据源。然后进去 - (BOOL)shouldAutorateTo .... 您将“隐藏”属性设置为您想要的。

/!\不要忘记启动tableView属性并设置其委托和数据源属性

2 个答案:

答案 0 :(得分:0)

如果您想获得更大的灵活性,请取出UITableViewController并在UIViewController内添加UITableView。至于轮换,我可能会在轮换时切换UITableViewUIScrollView

答案 1 :(得分:0)

您可以将滚动视图添加为self.view的子项,然后在ViewController中执行此操作

- (void)willRotateToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration
{
    if (UIDeviceOrientationIsLandscape(toInterfaceOrientation)) {
        tableView.hidden = YES;
        scrollView.hidden = NO;
    }
    else {
        tableView.hidden = NO;
        scrollView.hidden = YES;
    }
}