Iphone 如何在iOS中动态声明的自定义视图中添加UITableView?

Iphone 如何在iOS中动态声明的自定义视图中添加UITableView?,iphone,ios,objective-c,ipad,Iphone,Ios,Objective C,Ipad,在我的应用程序中,在导航栏中有一个按钮(比如说浏览按钮),当我点击按钮时,会出现一个视图(比如说浏览视图),这是我在CGRectMake功能的帮助下动态拍摄的 我在browseView中添加了UITableView(比如browseTableView) 表已添加到browseView,但委托方法不起作用 请给我正确的方向 我的代码如下: MainViewController.h 你忘了提到: browseTableView = [[UITableView alloc]initWithFrame:

在我的应用程序中,在导航栏中有一个按钮(比如说浏览按钮),当我点击按钮时,会出现一个视图(比如说浏览视图),这是我在CGRectMake功能的帮助下动态拍摄的

我在browseView中添加了UITableView(比如browseTableView

表已添加到browseView,但委托方法不起作用

请给我正确的方向

我的代码如下:

MainViewController.h 你忘了提到:

browseTableView = [[UITableView alloc]initWithFrame:CGRectMake(0.0, 0.0, 300, 460)];
browseTableView.delegate = self;
browseTableView.dataSource = self;
[browseView addSubview:browseTableView];

您需要在browseTableView=[[UITableView alloc]initWithFrame:CGRectMake(0.0,0.0,300,460)]之后设置它;因为您创建了一个新对象,它被过度引用了。如果我将表添加到主视图,它将被添加,但我无法将其添加到browseview本身。这很奇怪,它应该被添加。你能分享一下这个项目或是一个演示吗?当我们不知道你要去哪里的时候,很难给你指出正确的方向。请说明您正试图实现的目标以及您正试图让应用程序实现的目标。这个问题在这方面有点模糊。您还声明“委托方法不起作用”,请解释您得出该结论的确切方式和原因
browseTableView.delegate = self;
browseTableView.dataSource =self;

-(void)BrowseButton {

    browseView = [[UIView alloc]initWithFrame:CGRectMake(0.0, 0.0, 300.0, 500.0)];
    browseView.backgroundColor = [UIColor whiteColor];
    browseView.opaque = NO;
    [browseView.layer setBorderColor: [[UIColor blackColor] CGColor]];
    [browseView.layer setBorderWidth: 4.0];
    [browseView setBackgroundColor:[UIColor clearColor]];
    browseTableView = [[UITableView alloc]initWithFrame:CGRectMake(0.0, 0.0, 300, 460)];
    [browseView addSubview:browseTableView];
    [self.view addSubview:browseView];      
}

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
    categoryArray =  [[NSMutableArrayalloc]initWithObjects:@"Platinum",@"Diamond",
    @"Gold",@"Silver", nil];
    return [categoryArray count];
}

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath  {
    UITableViewCell *cell = [[UITableViewCell alloc]init];
    cell.textLabel.text = [categoryArray objectAtIndex:indexPath.row];
    return cell;
}  
browseTableView = [[UITableView alloc]initWithFrame:CGRectMake(0.0, 0.0, 300, 460)];
browseTableView.delegate = self;
browseTableView.dataSource = self;
[browseView addSubview:browseTableView];