Iphone 如何将UITableView嵌入UIScrollView?

Iphone 如何将UITableView嵌入UIScrollView?,iphone,ipad,Iphone,Ipad,我制作了一个启用分页(水平滚动)的UIScrollView,我想在UIScrollView中嵌入几个UITableView对象 怎么做?是否有任何示例代码 谢谢。编辑: 您的tableView中可以有很多对象,并且self.tableView.scrollEnabled=YES将提供垂直滚动视图 要获得水平滚动,我建议您为每个视图控制器创建一个tableView,并添加一个UIPageControl,每个页面都表示一个tableView 检查一下 您可以使用本教程进行开发- 下面是一个将两个UI

我制作了一个启用分页(水平滚动)的UIScrollView,我想在UIScrollView中嵌入几个UITableView对象

怎么做?是否有任何示例代码

谢谢。

编辑:

您的
tableView
中可以有很多对象,并且
self.tableView.scrollEnabled=YES
将提供垂直滚动视图

要获得水平滚动,我建议您为每个视图控制器创建一个tableView,并添加一个
UIPageControl
,每个页面都表示一个
tableView

检查一下

您可以使用本教程进行开发-

下面是一个将两个UITableViewController作为单独页面加载的示例

// .h File

@interface PagingViewController : UIViewController  <UIScrollViewDelegate>{

}

-(void)loadPage:(int)page;

@end



// .m File

static NSUInteger kNumberOfPages = 2;

@interface PagingViewController ()

@property(nonatomic,retain)NSMutableArray *viewControllers;
@property(nonatomic,retain)UIView *contentView;

@end

@implementation PagingViewController

@synthesize viewControllers;
@synthesize contentView;


-(id)init{

        self = [super init];

    if(self) {

        NSMutableArray *controllers = [[NSMutableArray alloc] init];
        for (unsigned i = 0; i < kNumberOfPages; i++)
        {
            [controllers addObject:[NSNull null]];
        }
        self.viewControllers = controllers;
        [controllers release];

        contentView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)];

        self.view = contentView;

        [self loadPage:0];

    }
    return self;
}

- (void)loadPage:(int)page{

    if (page < 0)
        return;
    if (page >= kNumberOfPages)
        return;
    if(page == 0){       
        FirstUITableViewController *firstTableVC = [viewControllers objectAtIndex:page];

        if ((NSNull *)firstTableVC == [NSNull null]){
            firstTableVC = [[FirstUITableViewController alloc] init];
            [viewControllers replaceObjectAtIndex:page withObject:firstTableVC];
            [firstTableVC release];
        }

        if (firstTableVC.view.superview == nil)
        {
            [contentView addSubview:firstTableVC.view];
        }
    }else if(page == 1){

        SecondUITableViewController *secondTableVC = [viewControllers objectAtIndex:page];

        if ((NSNull *)secondTableVC == [NSNull null]){
            secondTableVC = [[SecondUITableViewController alloc] init];
            [viewControllers replaceObjectAtIndex:page withObject:secondTableVC];
            [secondTableVC release];
        }

        if (secondTableVC.view.superview == nil)
        {
            [contentView addSubview:secondTableVC.view];
        }
    }
}
/.h文件
@界面分页ViewController:UIViewController{
}
-(无效)加载页:(内部)页;
@结束
//.m文件
静态整数kNumberOfPages=2;
@界面分页视图控制器()
@属性(非原子,保留)NSMUTABLEARRY*viewControllers;
@属性(非原子,保留)UIView*contentView;
@结束
@PagingViewController的实现
@综合视图控制器;
@综合内容视图;
-(id)init{
self=[super init];
如果(自我){
NSMutableArray*控制器=[[NSMutableArray alloc]init];
for(无符号i=0;i=kNumberOfPages)
返回;
如果(第==0页){
FirstUITableViewController*firstTableVC=[ViewController对象索引:页面];
如果((NSNull*)firstTableVC==[NSNull]){
firstTableVC=[[FirstUITableViewController alloc]init];
[viewControllers replaceObjectAtIndex:page with Object:firstTableVC];
[firstTableVC发布];
}
if(firstTableVC.view.superview==nil)
{
[contentView addSubview:firstTableVC.view];
}
}否则如果(第==1页){
SecondUITableViewController*secondTableVC=[viewControllers objectAtIndex:page];
如果((NSNull*)secondTableVC==[NSNull]){
secondTableVC=[[SecondUITableViewController alloc]init];
[viewControllers replaceObjectAtIndex:page with Object:secondTableVC];
[第二次发布];
}
if(secondTableVC.view.superview==nil)
{
[contentView addSubview:secondTableVC.view];
}
}
}

//别忘了解除锁定

苹果严格地说是为了避免这种情况。在UIScrolView中使用UITableView。避免的原因是什么?如何复制我想要的?我已经说过UIScrollView是水平滚动的。你说的是垂直滚动。你的回答没有建设性。所以我们假设有3个表视图。您希望它们能够垂直滚动。是否要水平滚动每个tableview?是的。但是,您建议的教程没有讨论UITableView和UIScrollView的组合使用。您编辑的答案仍然毫无建设性。为什么不为每个页面设置UITableViewController?这很简单。给我几分钟:)